Wikibooks
plwikibooks
https://pl.wikibooks.org/wiki/Wikibooks:Strona_g%C5%82%C3%B3wna
MediaWiki 1.39.0-wmf.26
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
Gadżet
Dyskusja gadżetu
Definicja gadżetu
Dyskusja definicji gadżetu
Szablon:StronaStart
10
19820
438989
437431
2022-08-28T18:40:48Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white"><!--
--><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div>
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!--
-->{{DivClear}}<!--
-->{{Hr|styl=margin-bottom:8px;}}<!--
Koniec menu strony--></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||<!--
--><!--
-->}}{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
fcj7a6zifjaj50xpes2vyu18k6jvhd9
438992
438989
2022-08-28T18:50:51Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white"><!--
-->{{Hr|styl=margin-top:8px;}}<div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div>
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!--
Koniec menu strony--></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||<!--
--><!--
-->}}{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
hu8w00hv5p6c0fr96mg93jhi2ujmykp
438993
438992
2022-08-28T18:52:52Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;border: solid #aaa 1px;border-left:0;border-right:0;"><!--
--><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div>
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!--
Koniec menu strony--></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||<!--
--><!--
-->}}{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
ndnhsl9v6iem4dsujxf3eawlvxrr4mr
438994
438993
2022-08-28T18:57:55Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;"><div style="border: solid #aaa 1px;border-left:0;border-right:0;padding:3px;margin:3px;margin-left:0;margin-right:0"><!--
--><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div>
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!--
Koniec menu strony--></div></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||<!--
--><!--
-->}}{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
awgnn0vs09c4gtpuiqwg8cxmn813o8t
438997
438994
2022-08-28T19:09:49Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;"><div style="border: solid #aaa 1px;border-left:0;border-right:0;padding:5px;margin:3px 0"><!--
--><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div>
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!--
Koniec menu strony--></div></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
mu61q3szmyw1io1hp3swbzxqaf3ygku
438998
438997
2022-08-28T19:13:35Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;"><div style="border: solid #aaa 1px;padding:5px;margin:3px 0"><!--
--><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div>
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!--
Koniec menu strony--></div></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
871a42aowzsxsu492xagfvjfet3ir96
438999
438998
2022-08-28T19:15:41Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;"><div style="border: solid #aaa 1px;padding:5px 5px 5px 10px;margin:3px 0"><!--
--><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div>
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!--
Koniec menu strony--></div></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
43l6a5quhz87w656gmupxtj475jx3v0
439000
438999
2022-08-28T19:17:42Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;"><div style="border: solid #aaa 1px;padding:5px 5px 5px 10px;margin:3px 0" class="fonty_rodzina_sans fonty_główna_kolumna"><!--
--><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div>
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!--
Koniec menu strony--></div></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
i36ijpenmcmb4sho8ram2kck7dcvk6v
439001
439000
2022-08-28T19:19:19Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;"><div style="border: solid #aaa 1px;padding:5px 5px 5px 10px;margin:0 0 3px 0" class="fonty_rodzina_sans fonty_główna_kolumna"><!--
--><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div>
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!--
Koniec menu strony--></div></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
hfpukhdebzyb4oplowvpsjp7cineywq
439002
439001
2022-08-28T19:33:53Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;"><div style="border: solid #aaa 1px;padding:5px 5px 5px 10px;margin:0 0 3px 0" class="fonty_rodzina_sans fonty_główna_kolumna"><!--
--><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div>
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]<!--
Koniec menu strony-->{{DivClear}}</div></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
9ivfnkhnxlit813s6crjjjql7ypqej7
439003
439002
2022-08-28T19:39:12Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;"><div style="border: solid #aaa 1px;padding:5px 5px 5px 10px;margin:0 0 3px 0" class="fonty_rodzina_sans fonty_główna_kolumna"><!--
--><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div><div>
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]</div><!--
Koniec menu strony-->{{DivClear}}</div></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
s4ojxjss5hvhi2jpywud6qi9kj7gen5
439004
439003
2022-08-28T19:40:52Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;"><div style="border: solid #aaa 1px;padding:5px 5px 5px 10px;margin:0 0 3px 0" class="fonty_rodzina_sans fonty_główna_kolumna"><!--
--><div class="menu_boks" style="margin-left:5px;margin-bottom:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div><div style="margin:1px 0">
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]</div><!--
Koniec menu strony-->{{DivClear}}</div></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
8cnq5043wr1u57cjayx7y4xynmdlt2a
439005
439004
2022-08-28T19:48:26Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;"><div style="border: solid #aaa 1px;padding:5px 5px 5px 10px;margin:3px 0" class="fonty_rodzina_sans fonty_główna_kolumna"><!--
--><div class="menu_boks" style="margin-left:5px;margin:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div><div style="margin:1px 0">
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]</div><!--
Koniec menu strony-->{{DivClear}}</div></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
fx1f18v8fb7hmtwha4dugg0fvf82hcp
439006
439005
2022-08-28T19:50:38Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;"><div style="border: solid #aaa 1px;padding:5px 5px 5px 10px;margin:3px 0" class="fonty_rodzina_sans fonty_główna_kolumna"><!--
--><div class="menu_boks" style="margin-left:5px;margin:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div><div style="margin:0 0 0 2px">
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]</div><!--
Koniec menu strony-->{{DivClear}}</div></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
hwpd2yvgf0sv594nfi1nbhle0iowsn7
439007
439006
2022-08-28T19:52:03Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;"><div style="border: solid #aaa 1px;padding:5px 5px 5px 10px;margin:3px 0" class="fonty_rodzina_sans fonty_główna_kolumna"><!--
--><div class="menu_boks" style="margin-left:5px;margin:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div><div style="margin-top:2px">
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]</div><!--
Koniec menu strony-->{{DivClear}}</div></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
khxvi0zpb5uusiedi1dt69ezj2m9g5g
439008
439007
2022-08-28T19:55:16Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;"><div style="border: solid #aaa 1px;padding:5px 5px 5px 10px;margin-bottom:3px" class="fonty_rodzina_sans fonty_główna_kolumna"><!--
--><div class="menu_boks" style="margin-left:5px;margin:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div><div style="margin-top:2px">
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]</div><!--
Koniec menu strony-->{{DivClear}}</div></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
o4uo059jvz7jocjki5k5efy8lr6vm7u
439009
439008
2022-08-28T19:56:50Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;"><div style="border: solid #aaa 1px;padding:5px 5px 5px 10px;margin-bottom:3px" class="fonty_rodzina_sans fonty_główna_kolumna"><!--
--><div class="menu_boks" style="margin-left:5px;margin:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div><div style="margin-top:1px">
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]</div><!--
Koniec menu strony-->{{DivClear}}</div></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_zawartości" class="ciało_zawartości" style="order:2;flex:0 1 auto;max-width:100%;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
0hlgp7ch2mvkzj9tzcdi9bzn80sfir9
439011
439009
2022-08-28T20:06:37Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;"><div style="border: solid #aaa 1px;padding:5px 5px 5px 10px;margin-bottom:3px" class="fonty_rodzina_sans fonty_główna_kolumna"><!--
--><div class="menu_boks" style="margin-left:5px;margin:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div><div style="margin-top:1px">
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]</div><!--
Koniec menu strony-->{{DivClear}}</div></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
8t1vvogizpeyetf3z31g38e36ojmniq
439013
439011
2022-08-28T21:11:24Z
Persino
2851
wikitext
text/x-wiki
<includeonly><templatestyles src="Szablon:StronaStart/stronastart.css" /><templatestyles src="Szablon:TOC_limit/styles.css" />{{#if:{{{formatowanie|}}}|<templatestyles src="Szablon:StronaStart/styles.css" />{{#if:{{{boczne menu|}}}|{{#if:{{{spis treści|TOC}}}{{{wykaz modułów|WYKAZ}}}|<templatestyles src="Szablon:TOC/styles.css" />}}}}}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}|||{{Mniejszy}}div class="strona_start" style="min-width:822px;width:auto;max-width:100%;height:auto;box-sizing:border-box;overflow:hidden;position:relative;"{{Większy}}{{Mniejszy}}div style="display:flex;flex-direction:column;"{{Większy}}{{#if:{{{podręcznik|tak}}}|{{Podręcznik|styl=order:1;}}}}{{Mniejszy}}div style="order:2;"{{Większy}}
{{{nagłówek|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div style="order:4;"{{Większy}}
{{{stopka|}}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}div class="noprint" class="główna_strona tło" style="order:3;position:relative;top:0px;left:0px;display:flex;flex-direction:row;{{#if:{{{margines zewnętrzny|0}}}|margin:{{{margines zewnętrzny|0}}};}}"{{Większy}}{{#if:{{{boczne menu|}}}|__NOTOC__}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}{{{nagłówek prawy|}}}{{{stopka prawa|}}}|
<div style="order:1;width:{{{lewa strona|auto}}};box-sizing:border-box;overflow:visible;position:relative;" class="strona_lewa mw-parent-node"><!--
--><div class="nawigacja_boksy" style="height:100%;width:auto;visibility:hidden;flex-direction:column;box-sizing:border-box;z-index:1;left:0"><!--
-->{{#if:{{{nagłówek lewy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{nagłówek lewy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka lewa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;left:0;z-index:2;margin-right:5px|{{{stopka lewa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div><!--
--><div style="width:{{{prawa strona|100%}}};box-sizing:border-box;order:3;overflow:visible;position:relative;" class="strona_prawa mw-parent-node"><div class="mw-sticky-y toclimit {{#if:{{{limit|}}}|toclimit-{{{limit}}}}} {{#if:{{{formatowanie|}}}|fonty_rodzina_sans {{#if:{{{boczne menu|}}}|fonty_poboczna_kolumna|fonty_toc}}}} spis nawigacja_spis" style="display:flex;flex-direction:column;z-index:2;position:absolute;left:0;top:0;width:{{#if:{{{boczne menu|}}}|700px|auto}};max-width:700px;box-sizing:border-box;{{#if:{{{margines zewnętrzny poboczny|0 0 0 5px}}}|margin:{{{margines zewnętrzny poboczny|0 0 0 5px}}};}}{{#if:{{{margines wewnętrzny poboczny|0}}}|padding:{{{margines wewnętrzny poboczny|0}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-size:{{{rozmiar czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|line-height:{{{wysokość linii czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-family:{{{rodzina czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-variant:{{{wariant czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-stretch:{{{rozciągnięcie czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-weight:{{{waga czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}}{{#if:{{{czcionka {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}||{{#if:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}}|font-style:{{{styl czcionki {{#if:{{{boczne menu|}}}|bocznego menu|TOC}}|}}};}}}};"><!--
-->{{#if:{{{boczne menu|}}}<!--
-->|{{#invoke:StronicowyParser|PierwszaStrona|{{{nazwa modułu|NAZWA MODUŁU}}}|{{{licencja|LICENCJA}}}|{{{wykaz modułów|WYKAZ}}}|{{{spis treści|TOC}}}|rozciągnij=tak|wysokość=100%|bez marginesu dolnego=tak}}<!--
-->|{{#switch:{{#invoke:Pudełko|Typ jednostki|obsługiwane jednostki użytkownika=tak|obsługiwane jednostki brudnopisu projektu=tak|obsługiwane strony jako niebrudnopisowe jednostki programowe=tak}}<!--
-->|podręcznik|podręcznik dla dzieci|podręcznik brudnopisu projektu|podręcznik użytkownika={{Jeśli niepuste|{{#invoke:StronicowyParser|WykazModolow|spis książkowy=tak|spis rzeczy=tak|nagłówki=tak|wysokość=100%}}|__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}|przed lewy={{Div start|styl=width:700px;background-color:white;display:flex;flex-direction:column;overflow:auto;}}{{StronaTytułowa|rozmiar=100%}}__NOTOC__|po lewy={{Div koniec}}}}<!--
-->|strona szablonu={{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->|#default=__NOTOC__{{TOC/silnik|funkcja=PokazanaNiewikitabelowaListaMenu|spis treści=Spis treści|spis artykułu=tak|limit={{{limit|}}}|bez dodatkowych sprawdzeń=tak|bez komunikatu błędu=tak|wysokość=100%}}<!--
-->}}<!--
-->}}<!--
--></div>
<!--
--><div class="nawigacja_boksy" style="width:auto;height:100%;visibility:hidden;flex-direction:column;margin-top:0;box-sizing:border-box;z-index:1;right:0"><!--
-->{{#if:{{{nagłówek prawy|}}}|<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px|{{{nagłówek prawy}}}}}<!--
-->{{DivClear}}<!--
-->}}<!--
-->{{Div|styl=height:100%;box-sizing:border-box;}}<!--
-->{{#if:{{{stopka prawa|}}}|{{DivClear}}<!--
-->{{Div|klasa=mw-optimal-x|styl=position:absolute;right:0;z-index:2;margin-left:5px;|{{{stopka prawa}}}}}<!--
-->}}<!--
-->
</div><!--
--></div>}}<!--
-->}}{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|{{Mniejszy}}div style="order:2;display:flex;flex-direction:column;" class="strona_środkowa"{{Większy}}<!--
--><div style="order:1">{{{wstęp|}}}</div><!--
--><div style="order:3">{{{zakończenie|}}}</div><!--
Menu strony-->
<div class="menu" style="display:none;background-color:white;"><div style="border: solid #aaa 1px;padding:5px 5px 4px 10px;margin-bottom:3px" class="fonty_rodzina_sans fonty_główna_kolumna"><!--
--><div class="menu_boks" style="margin-left:5px;margin:0;padding:0 5px;background-color:blue;color:white;float:right;width:auto;height:20px;border: solid #aaa 1px;text-align:center;position:relative;right:0;top:0;"><span class="boksy" style="display:inline">Boksy</span><span class="spis_treści" style="display:none;">Spis treści</span></div><div style="margin-top:1px">
[[Wikibooks:Prawa autorskie|Prawa autorskie]]{{•}} [[Wikibooks:Informacje prawne|Informacje prawne]]{{•}} [[Pomoc:Tworzenie podręczników|Tworzenie podręczników]]{{•}} [[Pomoc:Tworzenie podręcznika|Tworzenie podręcznika]]{{•}} [[Pomoc:Edycja kodu|Edycja kodu]]</div><!--
Koniec menu strony-->{{DivClear}}</div></div><!--
-->}}{{Mniejszy}}div id="strona" {{#if:{{{formatowanie|}}}|class="strona mw-overflow-x print fonty_rodzina_sans fonty_główna_kolumna {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"|class="strona {{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}||strona_start}}"}} style="{{#if:{{{boczne menu|}}}{{{spis treści|TOC}}}|order:2;}}display:flex;flex-direction:column;position:relative;left:0px;top:0px;min-width:{{{minimalna szerokość strony|{{{szerokość strony|822px}}}}}};max-width:{{{maksymalna szerokość strony|{{{szerokość strony|822px}}}}}};width:{{{szerokość strony|822px}}};height:{{{wysokość strony|100%}}};{{#if:{{{obramowanie|tak}}}|border: solid #aaa 1px;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}|padding:{{{margines wewnętrzny|10px 10px 10px 10px}}};}}{{#if:{{{margines zewnętrzny główny|0}}}|margin:{{{margines zewnętrzny główny|0}}};}}{{#ifeq:{{{boczne menu|}}}{{{spis treści|TOC}}}||{{#if:{{{margines zewnętrzny|5px 0 0 0}}}|margin:{{{margines zewnętrzny|5px 0 0 0}}};}}}}{{#if:{{{pasek przewijania|hidden}}}|overflow-x:{{{pasek przewijania|hidden}}};overflow-y:visible;}}{{#if:{{{margines wewnętrzny|10px 10px 10px 10px}}}{{{obramowanie|tak}}}|box-sizing:border-box;}}{{#if:{{{czcionka strony|}}}|font:{{{czcionka strony|}}};}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozmiar czcionki strony|}}}|font-size:{{{rozmiar czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wysokość linii czcionki strony|}}}|line-height:{{{wysokość linii czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rodzina czcionki strony|}}}|font-family:{{{rodzina czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{wariant czcionki strony|}}}|font-variant:{{{wariant czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{rozciągnięcie czcionki strony|}}}|font-stretch:{{{rozciągnięcie czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{waga czcionki strony|}}}|font-weight:{{{waga czcionki strony|}}};}}}}{{#if:{{{czcionka strony|}}}||{{#if:{{{styl czcionki strony|}}}|font-style:{{{styl czcionki strony|}}};}}}}background-color:white;"{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_kontener" class="ciało_kontener" style="display:flex;flex-direction:column"{{Większy}}<!--
-->{{Mniejszy}}div style="order:1;flex:0 1 auto;max-width:100%;"{{Większy}}{{{nagłówek strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div style="order:3;flex:0 1 auto;max-width:100%;"{{Większy}}{{{stopka strony|}}}{{Mniejszy}}/div{{Większy}}<!--
-->{{Mniejszy}}div id="ciało_strona" class="ciało_strona"{{Większy}}<!--
--></includeonly><noinclude>{{Dokumentacja}}</noinclude>
r41elynw5hdaawjikxzz5dt0d5ultiv
Szablon:StronaKoniec
10
19821
439010
435866
2022-08-28T20:06:31Z
Persino
2851
wikitext
text/x-wiki
<includeonly>{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{#ifeq:{{{1|}}}|Niekolumnowy||{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}{{Mniejszy}}/div{{Większy}}}}</includeonly><noinclude>{{Dokumentacja|Szablon:StronaStart/opis}}</noinclude>
mi414ddgjtksae1qi85g8j0s146uc1k
Szablon:UnikatowaStronaStart
10
25375
439026
430342
2022-08-29T08:23:36Z
Persino
2851
wikitext
text/x-wiki
<includeonly>{{StronaStart
| nazwa przestrzeni nazw = {{{nazwa przestrzeni nazw|{{NAMESPACE}}}}}
| nazwa jednostki = {{{nazwa jednostki|{{PAGENAME}}}}}
| typ jednostki = {{{typ jednostki|}}}
| formatowanie = tak
| podręcznik =
| limit = {{{limit|}}}
<!-- Parametry dodatkowe -->
| wstęp = {{{wstęp|}}}
| zakończenie = {{{zakończenie|}}}
| nagłówek = {{{nagłówek|}}}
| stopka = {{{stopka|}}}
| nagłówek strony = {{{nagłówek strony|}}}
| stopka strony = {{{stopka strony|}}}
| nagłówek lewy = {{{nagłówek lewy|}}}
| stopka lewa = {{{stopka lewa|}}}
| nagłówek prawy = {{{nagłówek prawy|}}}
| stopka prawa = {{{stopka prawa|}}}<!--
Nagłówki i stopki - koniec
-->}}</includeonly><noinclude>{{Dokumentacja}}</noinclude>
4kndpgiznv5gb12sy2b321hnuokvz5v
Siewki roślin flory Polski/Marzanowate
0
32658
439016
402913
2022-08-28T21:57:37Z
Kenraiz
3283
/* Marzanka barwierska (Asperula tinctoria L.) */ + foto
wikitext
text/x-wiki
{{NawigacjaG|Siewki roślin flory Polski|[[Siewki roślin flory Polski/Wrzosowate|Wrzosowate]]|[[Siewki roślin flory Polski/Goryczkowate|Goryczkowate]]}}
<center><big><big>Marzanowate (''Rubiaceae'')</big></big></center>
<!-- <center>Zobacz też: [[Siewki roślin uprawianych w Polsce/Marzanowate|marzanowate uprawiane]]</center> -->
{{TOC limit|2}}
=== Marzanka (''Asperula'') ===
==== [[w:Marzanka polna|Marzanka polna]] (''Asperula arvensis'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Marzanka pagórkowa|Marzanka pagórkowa]] (''Asperula cynanchica'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Marzanka wschodnia|Marzanka wschodnia]] (''Asperula orientalis'' Boiss. & Hohen.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Marzanka barwierska|Marzanka barwierska]] (''Asperula tinctoria'' L.) ====
<!-- opis siewki -->
<gallery>
File:Asperula tinctoria kz05.jpg|Siewka marzanki barwierskiej.
File:Asperula tinctoria kz06.jpg|Siewka marzanki barwierskiej.
</gallery>
{{Siewki roślin flory Polski/Commons|Asperula tinctoria (seedlings)|siewki marzanki barwierskiej}}
=== Przytulinka (''Cruciata'') ===
==== [[w:Przytulinka wiosenna|Przytulinka wiosenna]] (''Cruciata glabra'' (L.) Ehrend.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulinka krzyżowa|Przytulinka krzyżowa]] (''Cruciata laevipes'' Opiz) ====
<!-- opis siewki -->
<gallery>
File:Cruciata laevipes kz11.jpg|Siewka przytulinki krzyżowej.
File:Cruciata laevipes kz04.jpg|Siewki przytulinki krzyżowej.
File:Cruciata laevipes kz03.jpg|Siewki przytulinki krzyżowej.
</gallery>
{{Siewki roślin flory Polski/Commons|Cruciata laevipes (seedlings)|siewki przytulinki krzyżowej}}
=== Przytulia (''Galium'') ===
==== [[w:Przytulia biała|Przytulia biała]] (''Galium album'' Mill) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulia nierównolistna|Przytulia nierównolistna]] (''Galium anisophyllon'' Vill.) ====
<!-- opis siewki -->
<gallery>
File:Galium anisophyllon 2018-05-04 0950.jpg|Siewki przytulii nierównolistnej.
File:Galium anisophyllon 2018-05-04 0949.jpg|Siewka przytulii nierównolistnej.
File:Galium anisophyllon 2018-05-04 0948.jpg|Siewki przytulii nierównolistnej.
</gallery>
{{Siewki roślin flory Polski/Commons|Galium anisophyllon (seedlings)|siewki przytulii nierównolistnej}}
==== [[w:Przytulia czepna|Przytulia czepna]] (''Galium aparine'' L.) ====
<!-- opis siewki -->
<gallery>
File:Galium aparine 2018-02-01 7615c.jpg|Siewka przytulii czepnej.
File:Galium aparine 2018-02-01 7611.jpg|Siewka przytulii czepnej.
File:Galium aparine kz01.jpg|Siewka przytulii czepnej.
File:Galium aparine 2018-02-01 7558.jpg|Siewki przytulii czepnej.
File:Galium aparine 2018-02-01 7620.jpg|Młoda roślina przytulii czepnej.
File:Galium aparine kz02.jpg|Młoda roślina przytulii czepnej.
</gallery>
{{Siewki roślin flory Polski/Commons|Galium aparine (seedlings)|siewki przytulii czepnej}}
==== [[w:Przytulia północna|Przytulia północna]] (''Galium boreale'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulia krakowska|Przytulia krakowska]] (''Galium cracoviense'' Ehrens) ====
<!-- opis siewki -->
<gallery>
File:Galium cracoviense kz07.jpg|Siewka przytulii krakowskiej.
File:Galium cracoviense kz02.jpg|Siewka przytulii krakowskiej.
File:Galium cracoviense kz01.jpg|Siewki przytulii krakowskiej.
File:Galium cracoviense kz03.jpg|Siewki przytulii krakowskiej.
</gallery>
{{Siewki roślin flory Polski/Commons|Galium cracoviense (seedlings)|siewki przytulii krakowskiej}}
==== [[w:Przytulia wydłużona|Przytulia wydłużona]] (''Galium elongatum'' C.Presl) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulia sina|Przytulia sina]] (''Galium glaucum'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== ''[[w:Galium humifusum|Galium humifusum]]'' M. Bieb. ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulia Schultesa|Przytulia Schultesa]] (''Galium intermedium'' Schult.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulia pospolita|Przytulia pospolita]] (''Galium mollugo'' L.) ====
<!-- opis siewki -->
<gallery>
Plik:Galium mollugo kz06.jpg|Siewka przytulii pospolitej.
Plik:Galium mollugo kz07.jpg|Siewka przytulii pospolitej.
Plik:Galium mollugo kz03.jpg|Siewki przytulii pospolitej.
Plik:Galium mollugo kz04.jpg|Siewka przytulii pospolitej.
</gallery>
{{Siewki roślin flory Polski/Commons|Galium mollugo (seedlings)|siewki przytulii pospolitej}}
==== [[w:Przytulia wonna|Przytulia wonna]], marzanka wonna (''Galium odoratum'' (L.)Scop.) ====
<!-- opis siewki -->
<gallery>
File:Galium odoratum 2018-05-04 0917.jpg|Siewki przytulii wonnej.
File:Galium odoratum 2018-05-04 0926.jpg|Siewka przytulii wonnej.
File:Galium odoratum 2018-05-04 0925.jpg|Siewka przytulii wonnej.
File:Galium odoratum 2018-05-04 0908.jpg|Siewki przytulii wonnej.
File:Galium odoratum 2018-05-04 0922.jpg|Siewki przytulii wonnej.
</gallery>
{{Siewki roślin flory Polski/Commons|Galium odoratum (seedlings)|siewki przytulii wonnej}}
==== [[w:Przytulia błotna|Przytulia błotna]] (''Galium palustre'' L.) ====
<!-- opis siewki -->
<gallery>
File:Galium palustre kz06.jpg|Siewka przytulii błotnej.
File:Galium palustre kz05.jpg|Siewka przytulii błotnej.
File:Galium palustre kz08.jpg|Siewka przytulii błotnej.
File:Galium palustre kz01.jpg|Siewka przytulii błotnej.
</gallery>
{{Siewki roślin flory Polski/Commons|Galium palustre (seedlings)|siewki przytulii błotnej}}
==== ''[[w:Galium parisiense|Galium parisiense]]'' L. ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulia szorstkoowockowa|Przytulia szorstkoowockowa]] (''Galium pumilum'' Murray.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulia lepczyca|Przytulia lepczyca]] (''Galium rivale'' (Sibht & Sm.)Griseb.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulia okrągłolistna|Przytulia okrągłolistna]] (''Galium rotundifolium'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulia hercyńska|Przytulia hercyńska]] (''Galium saxatile'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulia fałszywa|Przytulia fałszywa]] (''Galium spurium'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulia sudecka|Przytulia sudecka]] (''Galium sudeticum'' Tausch) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulia leśna|Przytulia leśna]] (''Galium sylvaticum'' L.) ====
<!-- opis siewki -->
<gallery>
File:Galium sylvaticum kz04.jpg|Siewka przytulii leśnej.
File:Galium sylvaticum kz05.jpg|Siewka przytulii leśnej.
File:Galium sylvaticum kz06.jpg|Siewka przytulii leśnej.
</gallery>
{{Siewki roślin flory Polski/Commons|Galium sylvaticum (seedlings)|siewki przytulii leśnej}}
==== [[w:Przytulia trójrożna|Przytulia trójrożna]] (''Galium tricornutum'' Dandy) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulia trójdzielna|Przytulia trójdzielna]] (''Galium trifidum'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulia bagienna|Przytulia bagienna]] (''Galium uliginosum'' L.) ====
<!-- opis siewki -->
<gallery>
File:Galium uliginosum kz04.jpg|Siewka przytulii bagiennej.
File:Galium uliginosum kz03.jpg|Siewka przytulii bagiennej.
File:Galium uliginosum kz05.jpg|Siewka przytulii bagiennej.
File:Galium uliginosum kz02.jpg|Siewka przytulii bagiennej.
</gallery>
{{Siewki roślin flory Polski/Commons|Galium uliginosum (seedlings)|siewki przytulii bagiennej}}
==== [[w:Przytulia stepowa|Przytulia stepowa]] (''Galium valdepilosum'' Heinr. Braun) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulia wielkoowockowa|Przytulia wielkoowockowa]] (''Galium verrucosum'' Huds.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przytulia właściwa|Przytulia właściwa]] (''Galium verum'' L.) ====
<!-- opis siewki -->
<gallery>
File:Galium verum kz09.jpg|Siewka przytulii właściwej.
File:Galium verum kz11.jpg|Siewka przytulii właściwej.
File:Galium verum kz12.jpg|Siewka przytulii właściwej.
File:Galium verum kz14.jpg|Siewka przytulii właściwej.
</gallery>
{{Siewki roślin flory Polski/Commons|Galium verum (seedlings)|siewki przytulii właściwej}}
==== [[w:Przytulia Wirtgena|Przytulia Wirtgena]] (''Galium wirtgenii'' F.W. Schultz) ====
<!-- opis siewki -->
<gallery>
</gallery>
=== Marzana (''Rubia'') ===
==== [[w:Marzana barwierska|Marzana barwierska]] (''Rubia tinctorum'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
=== Rolnica (''Sherardia'') ===
==== [[w:Rolnica pospolita|Rolnica pospolita]] (''Sherardia arvensis'' L.) ====
<!-- opis siewki -->
<gallery>
File:Sherardia arvensis kz06.jpg|Siewka rolnicy pospolitej.
File:Sherardia arvensis kz04.jpg|Siewka rolnicy pospolitej.
File:Sherardia arvensis kz10.jpg|Siewka rolnicy pospolitej.
File:Sherardia arvensis kz05.jpg|Siewka rolnicy pospolitej.
File:Sherardia arvensis kz11.jpg|Siewka rolnicy pospolitej.
File:Sherardia arvensis kz07.jpg|Siewka rolnicy pospolitej.
</gallery>
{{Siewki roślin flory Polski/Commons|Sherardia arvensis (seedlings)|siewki rolnicy pospolitej}}
{{Nawigacja|Siewki roślin flory Polski|[[Siewki roślin flory Polski/Wrzosowate|Wrzosowate]]|[[Siewki roślin flory Polski/Goryczkowate|Goryczkowate]]}}
ddw162zy82e39orefy7y7matnudmwvr
Siewki roślin flory Polski/Selerowate
0
32682
439015
432411
2022-08-28T21:28:20Z
Kenraiz
3283
+ Libanotis
wikitext
text/x-wiki
{{NawigacjaG|Siewki roślin flory Polski|[[Siewki roślin flory Polski/Araliowate|Araliowate]]|[[Siewki roślin flory Polski/Autorzy|Autorzy]]}}
<center><big><big>Selerowate (''Apiaceae'')</big></big></center>
<center>Zobacz też: [[Siewki roślin uprawianych w Polsce/Selerowate|selerowate uprawiane]]</center>
{{TOC limit|2}}
=== Podagrycznik (''Aegopodium'') ===
==== [[w:Podagrycznik pospolity|Podagrycznik pospolity]] (''Aegopodium podagraria'' L.) ====
<!-- opis siewki -->
<gallery>
File:Aegopodium podagraria 2019-04-19 1332.jpg|Siewka podagrycznika pospolitego.
File:Aegopodium podagraria kz02.jpg|Siewka podagrycznika pospolitego.
File:Aegopodium podagraria kz03.jpg|Siewka podagrycznika pospolitego.
File:Aegopodium podagraria 2019-04-30 2389.jpg|Siewka podagrycznika pospolitego.
File:Aegopodium podagraria 2019-05-12 3220.jpg|Siewka podagrycznika pospolitego.
File:Aegopodium podagraria 2019-05-17 3434.jpg|Siewka podagrycznika pospolitego.
File:Aegopodium podagraria 2017-04-15 7155.jpg|Siewka podagrycznika pospolitego.
</gallery>
{{Siewki roślin flory Polski/Commons|Aegopodium podagraria (seedlings)|siewki podagrycznika pospolitego}}
=== Blekot (''Aethusa'') ===
==== [[w:Blekot pospolity|Blekot pospolity]] (''Aethusa cynapium'' L.) ====
<!-- opis siewki -->
<gallery>
Plik:Aethusa cynapium kz04.jpg|Siewka blekotu pospolitego.
Plik:Aethusa cynapium kz06.jpg|Siewka blekotu pospolitego.
Plik:Aethusa cynapium kz03.jpg|Siewka blekotu pospolitego.
Plik:Aethusa cynapium kz07.jpg|Siewka blekotu pospolitego.
Plik:Aethusa cynapium 2021-05-31 7067.jpg|Młoda roślina blekotu pospolitego.
</gallery>
{{Siewki roślin flory Polski/Commons|Aethusa cynapium (seedlings)|siewki blekotu pospolitego}}
=== Dzięgiel (''Angelica'') ===
==== [[w:Dzięgiel litwor|Dzięgiel litwor]] (''Angelica archangelica'' L.) ====
<!-- opis siewki -->
<gallery>
Plik:Angelica archangelica subsp. littoralis kz05.jpg|Siewka dzięgla litwora nadbrzeżnego.
Plik:Angelica archangelica subsp. littoralis kz03.jpg|Siewka dzięgla litwora nadbrzeżnego.
Plik:Angelica archangelica subsp. littoralis kz06.jpg|Siewka dzięgla litwora nadbrzeżnego.
File:Angelica archangelica 2018-05-22 2656.jpg|Siewka dzięgla litwora.
File:Angelica archangelica 2018-05-22 2654.jpg|Siewka dzięgla litwora.
File:Angelica archangelica Oenothera rubricaulis 2017-04-30 8980b.jpg|Siewka dzięgla litwora.
</gallery>
{{Siewki roślin flory Polski/Commons|Angelica archangelica (seedlings)|siewki dzięgla litwora}}
==== [[w:Starodub łąkowy|Starodub łąkowy]] (''Angelica palustris'' (Besser) Hoffm.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Dzięgiel leśny|Dzięgiel leśny]] (''Angelica silvestris'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
=== Trybula (''Anthriscus'') ===
==== [[w:Trybula pospolita|Trybula pospolita]] (''Anthriscus caucalis'' M. Bieb.) ====
<!-- opis siewki -->
<gallery>
File:Anthriscus caucalis kz16.jpg|Siewka trybuli pospolitej.
File:Anthriscus caucalis kz18.jpg|Siewka trybuli pospolitej.
File:Anthriscus caucalis kz19.jpg|Siewka trybuli pospolitej.
File:Anthriscus caucalis kz22.jpg|Siewka trybuli pospolitej.
File:Anthriscus caucalis plant (07).JPG|Siewka trybuli pospolitej.
File:Anthriscus caucalis plant (02).jpg|Młoda roślina.
</gallery>
{{Siewki roślin flory Polski/Commons|Anthriscus caucalis (seedlings)|siewki trybuli pospolitej}}
==== [[w:Trybula ogrodowa|Trybula ogrodowa]] (''Anthriscus cerefolium'' (L.) Hoffm.) ====
<!-- opis siewki -->
<gallery>
File:Echter Kerbel April 2012.JPG|Siewki trybuli ogrodowej.
</gallery>
{{Siewki roślin flory Polski/Commons|Anthriscus cerefolium (seedlings)|siewki trybuli ogrodowej}}
==== [[w:Trybula lśniąca|Trybula lśniąca]] (''Anthriscus nitida'' (Wahlenb.) Hazsl.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Trybula leśna|Trybula leśna]] (''Anthriscus sylvestris'' (L.) Hoffm.) ====
<!-- opis siewki -->
<gallery>
Plik:Anthriscus sylvestris kz08.jpg|Siewka trybuli leśnej.
Plik:Anthriscus sylvestris kz07.jpg|Siewka trybuli leśnej.
Plik:Anthriscus sylvestris kz05.jpg|Siewka trybuli leśnej.
File:Anthriscus sylvestris 2018-04-28 9699.jpg|Siewka trybuli leśnej.
File:Anthriscus sylvestris 2018-04-28 9701.jpg|Siewka trybuli leśnej.
</gallery>
{{Siewki roślin flory Polski/Commons|Anthriscus sylvestris (seedlings)|siewki trybuli leśnej}}
=== Jarzmianka (''Astrantia'') ===
==== [[w:Jarzmianka większa|Jarzmianka większa]] (''Astrantia major'' L.) ====
<!-- opis siewki -->
<gallery>
File:Astrantia major 2018-05-04 0936.jpg|Siewka jarzmianki większej.
File:Astrantia major 2018-05-04 0943.jpg|Siewka jarzmianki większej.
File:Astrantia major kz02.jpg|Siewka jarzmianki większej.
File:Astrantia major 2017-09-26 4825.jpg|Siewka jarzmianki większej.
</gallery>
{{Siewki roślin flory Polski/Commons|Astrantia major (seedlings)|siewki jarzmianki większej}}
=== Potocznik (''Berula'') ===
==== [[w:Potocznik wąskolistny|Potocznik wąskolistny]] (''Berula erecta'' (Huds.) Coville) ====
<!-- opis siewki -->
<gallery>
File:Berula erecta kz01.jpg|Siewka potocznika wąskolistnego.
File:Berula erecta kz03.jpg|Siewka potocznika wąskolistnego.
File:Berula erecta kz08.jpg|Siewka potocznika wąskolistnego.
File:Berula erecta kz10.jpg|Siewka potocznika wąskolistnego.
File:Berula erecta kz04.jpg|Siewka potocznika wąskolistnego.
</gallery>
{{Siewki roślin flory Polski/Commons|Berula erecta (seedlings)|siewki potocznika wąskolistnego}}
=== Szparzyca (''Bifora'') ===
==== [[w:Szparzyca promienista|Szparzyca promienista]] (''Bifora radians'' M. Bieb.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== ''[[w:Bifora testiculata|Bifora testiculata]]'' (L.) Roth ====
<!-- opis siewki -->
<gallery>
</gallery>
=== ''Bunium'' ===
==== ''[[w:Bunium bulbocastanum|Bunium bulbocastanum]]'' L. ====
<!-- opis siewki -->
<gallery>
</gallery>
=== Przewiercień (''Bupleurum'') ===
==== [[w:Przewiercień sierpowaty|Przewiercień sierpowaty]] (''Bupleurum falcatum'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== ''[[w:Bupleurum fontanesii|Bupleurum fontanesii]]'' Guss. ex Caruel ====
<!-- opis siewki -->
<gallery>
</gallery>
==== ''[[w:Bupleurum lancifolium|Bupleurum lancifolium]]'' Hornem. ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przewiercień długolistny|Przewiercień długolistny]] (''Bupleurum longifolium'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przewiercień jaskrowaty|Przewiercień jaskrowaty]] (''Bupleurum ranunculoides'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Przewiercień okrągłolistny|Przewiercień okrągłolistny]] (''Bupleurum rotundifolium'' L.) ====
<!-- opis siewki -->
<gallery>
Plik:Bupleurum rotundifolium kz03.jpg|Siewka przewiercienia okrągłolistnego.
Plik:Bupleurum rotundifolium kz05.jpg|Siewki przewiercienia okrągłolistnego.
Plik:Bupleurum rotundifolium kz10.jpg|Siewki przewiercienia okrągłolistnego.
Plik:Bupleurum rotundifolium kz06.jpg|Siewka przewiercienia okrągłolistnego.
</gallery>
{{Siewki roślin flory Polski/Commons|Bupleurum rotundifolium (seedlings)|siewki przewiercienia okrągłolistnego}}
==== [[w:Przewiercień cienki|Przewiercień cienki]] (''Bupleurum tenuissimum'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
=== Kminek (''Carum'') ===
==== [[w:Kminek zwyczajny|Kminek zwyczajny]] (''Carum carvi'' L.) ====
<!-- opis siewki -->
<gallery>
Plik:Carum carvi kz01.jpg|Siewka kminku zwyczajnego.
</gallery>
{{Siewki roślin flory Polski/Commons|Carum carvi (seedlings)|siewki kminku zwyczajnego}}
=== Włóczydło (''Caucalis'') ===
==== [[w:Włóczydło polne|Włóczydło polne]] (''Caucalis platycarpos'' L.) ====
<!-- opis siewki -->
<gallery>
Caucalis platycarpos Włóczydło polne 2019-04-28 03.jpg|Siewka włóczydła polnego
Caucalis platycarpos Włóczydło polne 2019-04-28 05.jpg|Siewka włóczydła polnego
</gallery>
{{Siewki roślin flory Polski/Commons|Caucalis platycarpos (seedlings)|siewki włóczydła polnego}}
=== Świerząbek (''Chaerophyllum'') ===
==== [[w:Świerząbek korzenny|Świerząbek korzenny]] (''Chaerophyllum aromaticum'' L.) ====
<!-- opis siewki -->
<gallery>
Plik:Chaerophyllum aromaticum kz02.jpg|Siewka świerząbka korzennego.
File:Chaerophyllum aromaticum 2017-05-07 9962.jpg|Siewki świerząbka korzennego.
</gallery>
{{Siewki roślin flory Polski/Commons|Chaerophyllum aromaticum (seedlings)|siewki świerząbka korzennego}}
==== [[w:Świerząbek złotawy|Świerząbek złotawy]] (''Chaerophyllum aureum'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Świerząbek bulwiasty|Świerząbek bulwiasty]] (''Chaerophyllum bulbosum'' L.) ====
<!-- opis siewki -->
<gallery>
File:Chaerophyllum bulbosum (cropped).jpg|Siewka świerząbka bulwiastego.
</gallery>
{{Siewki roślin flory Polski/Commons|Chaerophyllum bulbosum (seedlings)|siewki świerząbka bulwiastego}}
==== [[w:Świerząbek orzęsiony|Świerząbek orzęsiony]] (''Chaerophyllum hirsutum'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Świerząbek gajowy|Świerząbek gajowy]] (''Chaerophyllum temulum'' L.) ====
<!-- opis siewki -->
<gallery>
Plik:Chaerophyllum temulum kz02.jpg|Siewki świerząbka gajowego.
Plik:Chaerophyllum temulum kz04.jpg|Siewka świerząbka gajowego.
File:Chaerophyllum temulum 2018-04-20 9074.jpg|Siewka świerząbka gajowego.
File:Chaerophyllum temulum 2018-04-20 9220.jpg|Siewka świerząbka gajowego.
Plik:Chaerophyllum temulum kz06.jpg|Siewka świerząbka gajowego.
</gallery>
{{Siewki roślin flory Polski/Commons|Chaerophyllum temulum (seedlings)|siewki świerząbka gajowego}}
=== Szalej (''Cicuta'') ===
==== [[w:Szalej jadowity|Szalej jadowity]] (''Cicuta virosa'' L.) ====
<!-- opis siewki -->
<gallery>
Plik:Cicuta virosa kz03.jpg|Siewka szaleju jadowitego.
Plik:Cicuta virosa kz04.jpg|Siewka szaleju jadowitego.
Plik:Cicuta virosa kz05.jpg|Siewka szaleju jadowitego.
Plik:Cicuta virosa kz06.jpg|Siewki szaleju jadowitego.
Plik:Cicuta virosa kz07.jpg|Siewka szaleju jadowitego.
</gallery>
{{Siewki roślin flory Polski/Commons|Cicuta virosa (seedlings)|siewki szaleju jadowitego}}
=== Selernica (''Cnidium'') ===
==== [[w:Selernica żyłkowana|Selernica żyłkowana]] (''Cnidium dubium'' (Schkuhr) Thell.) ====
<!-- opis siewki -->
<gallery>
</gallery>
=== Szczwoligorz (''Conioselinum'') ===
==== [[w:Szczwoligorz tatarski|Szczwoligorz tatarski]] (''Conioselinum vaginatum'' (Spreng.) Thell.) ====
<!-- opis siewki -->
<gallery>
</gallery>
=== Szczwół (''Conium'') ===
==== [[w:Szczwół plamisty|Szczwół plamisty]] (''Conium maculatum'' L.) ====
<!-- opis siewki -->
<gallery>
File:Conium maculatum kz08.jpg|Siewka szczwołu plamistego.
File:Conium maculatum kz02.jpg|Siewka szczwołu plamistego.
File:Conium maculatum kz06.jpg|Siewka szczwołu plamistego.
File:Conium maculatum kz04.jpg|Siewka szczwołu plamistego.
File:Conium maculatum kz07.jpg|Siewka szczwołu plamistego.
File:Conium maculatum kz10.jpg|Siewki szczwołu plamistego.
</gallery>
{{Siewki roślin flory Polski/Commons|Conium maculatum (seedlings)|siewki szczwołu plamistego}}
=== ''Conopodium'' ===
==== ''[[w:Conopodium majus|Conopodium majus]]'' (Gouan) Loret ====
<!-- opis siewki -->
<gallery>
</gallery>
=== Marchew (''Daucus'') ===
==== ''[[w:Daucus aureus|Daucus aureus]]'' Desf. ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Marchew zwyczajna|Marchew zwyczajna]] (''Daucus carota'' L.) ====
<!-- opis siewki -->
<gallery>
File:Daucus carota kz06.jpg|Siewka marchwi zwyczajnej.
File:Carrots are up (2634523693).jpg|Siewki marchwi zwyczajnej.
File:Daucus carota kz01.jpg|Siewka marchwi zwyczajnej.
File:Daucus carota 2017-05-07 0002.jpg|Siewka marchwi zwyczajnej.
File:Daucus carota 2017-05-07 0004.jpg|Siewki marchwi zwyczajnej.
File:Pastanagues joves.JPG|Siewki marchwi zwyczajnej.
</gallery>
{{Siewki roślin flory Polski/Commons|Daucus carota (seedlings)|siewki marchwi zwyczajnej}}
=== ''Echinophora'' ===
==== ''[[w:Echinophora spinosa|Echinophora spinosa]]'' L. ====
<!-- opis siewki -->
<gallery>
</gallery>
=== Mikołajek (''Eryngium'') ===
==== [[w:Mikołajek polny|Mikołajek polny]] (''Eryngium campestre'' L.) ====
<!-- opis siewki -->
<gallery>
File:Eryngium campestre kz06.jpg|Siewka mikołajka polnego.
File:Eryngium campestre kz07.jpg|Siewka mikołajka polnego.
File:Eryngium campestre kz08.jpg|Siewka mikołajka polnego.
File:Eryngium campestre kz04.jpg|Siewka mikołajka polnego.
File:Eryngium campestre 2018-05-06 1563.jpg|Siewka mikołajka polnego.
File:Eryngium campestre 2018-05-06 1560.jpg|Siewka mikołajka polnego.
</gallery>
{{Siewki roślin flory Polski/Commons|Eryngium campestre (seedlings)|siewki mikołajka polnego}}
==== [[w:Mikołajek nadmorski|Mikołajek nadmorski]] (''Eryngium maritimum'' L.) ====
<!-- opis siewki -->
Kiełkowanie jest [[w:Kiełkowanie epigeiczne|epigeiczne]]<ref name="isermann">{{Cytuj pismo | autor = Maike Isermann, Paul Rooney | tytuł = Biological Flora of the British Isles: Eryngium maritimum | czasopismo = Journal of Ecology | wolumin = 102, 3 | strony = 789-821 | data = 2014 | doi = 10.1111/1365-2745.12243}}</ref> i następuje późną wiosną oraz na początku lata<ref name="muller166">{{Cytuj książkę | autor = F.M. Muller | tytuł = Seedlings of the North-Western European Lowland: A flora of seedlings | wydawca = Centre for Agricultural Publishing and Documentation | miejsce = Wageningen | data = 1978 | strony = 166}}</ref>. Tempo tego procesu jest bardzo zmienne, prawdopodobnie ze względu na wpływ warunków termicznych. Liścienie rozwijają się po 1–3 miesiącach po rozpoczęciu kiełkowania<ref name="isermann"/>. Mają pochwowatą, zbiegającą nasadę, kształt eliptycznolancetowaty i zaokrąglony koniec. Osiągają 7,5 do 9 mm długości, są nagie i nieco skórzaste<ref name="muller166"/>. Pierwszy liść rozwija się po 1,5–4 miesiącach, a drugi po 2–5 miesiącach. W ciągu 4–7 miesięcy po kiełkowaniu rozwijają się zwykle 3–4 liście odziomkowe, rzadko 5–6. U rocznej rośliny międzywęźla są bardzo ścieśnione, a liście niewielkie<ref name="isermann"/>. Pierwsze liście osadzone są na nagich ogonkach o długości 3–10 mm, ich blaszka jest naga, skórzasta i jajowata, z nasadą zbiegająco-zaokręgloną i trójklapowym szczytem (końce klap ostre)<ref name="muller166"/>. Korzeń pierwotny grubieje i zmienia się w korzeń palowy w ciągu kilku tygodni. Rozwinięcie w pierwszym sezonie wegetacyjnym odpowiednio dużego, spichrzowego korzenia jest kluczowym czynnikiem dla przetrwania młodej rośliny. Większość roślin kiełkujących późno, a zwłaszcza kiełkujących jesienią – obumiera<ref name="isermann"/>.
<gallery>
File:Eryngium maritimum seedling 01.JPG|Siewka mikołajka nadmorskiego.
File:Eryngium maritimum 2020-05-21 8773.jpg|Siewka mikołajka nadmorskiego.
File:Eryngium maritimum 2020-05-27 9189.jpg|Siewka mikołajka nadmorskiego.
File:Eryngium maritimum 2020-05-30 9214.jpg|Siewka mikołajka nadmorskiego.
File:Eryngium maritimum 2020-06-04 9219.jpg|Siewka mikołajka nadmorskiego.
</gallery>
{{Siewki roślin flory Polski/Commons|Eryngium maritimum (seedlings)|siewki mikołajka nadmorskiego}}
==== [[w:Mikołajek płaskolistny|Mikołajek płaskolistny]] (''Eryngium planum'' L.) ====
<!-- opis siewki -->
<gallery>
File:Eryngium planum kz03.jpg|Siewki mikołajka płaskolistnego.
File:Eryngium planum kz02.jpg|Siewki mikołajka płaskolistnego.
</gallery>
{{Siewki roślin flory Polski/Commons|Eryngium planum (seedlings)|siewki mikołajka płaskolistnego}}
=== Sierpnica (''Falcaria'') ===
==== [[w:Sierpnica pospolita|Sierpnica pospolita]] (''Falcaria vulgaris'' Bernh.) ====
<!-- opis siewki -->
<gallery>
File:Falcaria vulgaris kz05.jpg|Siewka sierpnicy pospolitej.
File:Falcaria vulgaris kz02.jpg|Siewka sierpnicy pospolitej.
File:Falcaria vulgaris kz04.jpg|Siewka sierpnicy pospolitej.
File:Falcaria vulgaris kz03.jpg|Siewka sierpnicy pospolitej.
</gallery>
{{Siewki roślin flory Polski/Commons|Falcaria vulgaris (seedlings)|siewki sierpnicy pospolitej}}
=== Cieszynianka (''Hacquetia'') ===
==== [[w:Cieszynianka wiosenna|Cieszynianka wiosenna]] (''Hacquetia epipactis'' Neck.ex DC.) ====
<!-- opis siewki -->
<gallery>
File:Hacquetia epipactis 2018-05-06 1419.jpg|Siewka cieszynianki wiosennej.
File:Hacquetia epipactis 2018-05-06 1420.jpg|Siewka cieszynianki wiosennej.
File:Hacquetia epipactis 2018-05-06 1421.jpg|Siewki cieszynianki wiosennej.
</gallery>
{{Siewki roślin flory Polski/Commons|Hacquetia epipactis (seedlings)|siewki cieszynianki wiosennej}}
=== Pęczyna (''Helosciadium'') ===
==== [[w:Pęczyna wodna|Pęczyna wodna]] (''Helosciadium inundatum'' W. D. J. Koch) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Pęczyna węzłobaldachowa|Pęczyna węzłobaldachowa]] (''Helosciadium nodiflorum'' (L.) Koch) ====
<!-- opis siewki -->
<gallery>
File:Apium nodiflorum kz06.jpg|Siewka pęczyny węzłobaldachowej.
File:Apium nodiflorum kz08.jpg|Siewka pęczyny węzłobaldachowej.
File:Apium nodiflorum kz07.jpg|Siewka pęczyny węzłobaldachowej.
File:Apium nodiflorum kz05.jpg|Siewka pęczyny węzłobaldachowej.
</gallery>
{{Siewki roślin flory Polski/Commons|Apium nodiflorum (seedlings)|siewki pęczyny węzłobaldachowej}}
==== [[w:Pęczyna błotna|Pęczyna błotna]] (''Helosciadium repens'' (Jacq.) Koch.) ====
<!-- opis siewki -->
<gallery>
File:Helosciadium repens kz17.jpg|Siewka pęczyny błotnej.
File:Helosciadium repens kz19.jpg||Siewka pęczyny błotnej.
File:Helosciadium repens kz21.jpg|Siewka pęczyny błotnej.
File:Helosciadium repens kz22.jpg|Siewka pęczyny błotnej.
File:Apium repens kz03.jpg|Siewka pęczyny błotnej.
</gallery>
{{Siewki roślin flory Polski/Commons|Apium repens (seedlings)|siewki pęczyny błotnej}}
=== Barszcz (''Heracleum'') ===
==== [[w:Barszcz Mantegazziego|Barszcz Mantegazziego]], barszcz kaukaski (''Heracleum mantegazzianum'' Sommier & Levier) ====
<!-- opis siewki -->
<gallery>
File:Heracleum mantegazzianum kz01.jpg|Młoda roślina barszczu Mantegazziego.
</gallery>
{{Siewki roślin flory Polski/Commons|Heracleum mantegazzianum (seedlings)|siewki barszczu Mantegazziego}}
==== [[w:Barszcz kosmaty|Barszcz kosmaty]] (''Heracleum pubescens'' (Hoffm.) M. Bieb.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Barszcz syberyjski|Barszcz syberyjski]] (''Heracleum sibiricum'' L.) ====
<!-- opis siewki -->
<gallery>
Plik:Heracleum sphondylium subsp. sibiricum kz04.jpg|Siewka barszczu syberyjskiego.
Plik:Heracleum sphondylium subsp. sibiricum kz05.jpg|Siewka barszczu syberyjskiego.
Plik:Heracleum sphondylium subsp. sibiricum kz03.jpg|Siewki barszczu syberyjskiego.
Plik:Heracleum sphondylium subsp. sibiricum kz01.jpg|Siewka barszczu syberyjskiego.
Plik:Heracleum sphondylium subsp. sibiricum kz02.jpg|Siewka barszczu syberyjskiego.
Plik:Heracleum sphondylium subsp. sibiricum kz06.jpg|Siewka barszczu syberyjskiego.
</gallery>
==== [[w:Barszcz Sosnowskiego|Barszcz Sosnowskiego]] (''Heracleum sosnowskyi'' Manden.) ====
<!-- opis siewki -->
<gallery>
File:Heracleum sosnowskyi kz21.jpg|Siewki barszczu Sosnowskiego.
File:Heracleum sosnowskyi kz22.jpg|Siewka barszczu Sosnowskiego.
File:Heracleum sosnowskyi kz18.jpg|Siewka barszczu Sosnowskiego.
File:Heracleum sosnowskyi kz20.jpg|Siewka barszczu Sosnowskiego.
File:Heracleum sosnowskyi kz01.jpg|Siewki barszczu Sosnowskiego.
</gallery>
{{Siewki roślin flory Polski/Commons|Heracleum sosnowskyi (seedlings)|siewki barszczu Sosnowskiego}}
==== [[w:Barszcz zwyczajny|Barszcz zwyczajny]] (''Heracleum sphondylium'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
=== Okrzyn (''Laserpitium'') ===
==== [[w:Okrzyn jeleni|Okrzyn jeleni]] (''Laserpitium archangelica'' Wulfen) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Okrzyn szerokolistny|Okrzyn szerokolistny]] (''Laserpitium latifolium'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Okrzyn łąkowy|Okrzyn łąkowy]] (''Laserpitium prutenicum'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
=== ''Ligusticum'' ===
==== [[w:Marchwica pospolita|Marchwica pospolita]] (''Ligusticum mutellina'' (L.) Crantz.) ====
<!-- opis siewki -->
<gallery>
File:Ligusticum mutellina kz01.jpg|Młoda roślina marchwicy pospolitej.
</gallery>
==== [[w:Nibymarchwica pojedyncza|Nibymarchwica pojedyncza]] (''Ligusticum mutellinoides'' Vill.) ====
<!-- opis siewki -->
<gallery>
</gallery>
=== Oleśnik ''Libanotis'' ===
==== [[w:Oleśnik górski|Oleśnik górski]] (''Libanotis pyrenaica'' (L.) Bourg.) ====
<!-- opis siewki -->
<gallery>
File:Libanotis pyrenaica kz01.jpg|Siewka oleśnika górskiego.
File:Libanotis pyrenaica kz02.jpg|Siewka oleśnika górskiego.
</gallery>
{{Siewki roślin flory Polski/Commons|Libanotis pyrenaica (seedlings)|siewki oleśnika górskiego}}
=== Wszewłoga (''Meum'') ===
==== [[w:Wszewłoga górska|Wszewłoga górska]] (''Meum athamanticum'' Jacq.) ====
<!-- opis siewki -->
<gallery>
</gallery>
=== Marchewnik (''Myrrhis'') ===
==== [[w:Marchewnik anyżowy|Marchewnik anyżowy]] (''Myrrhis odorata'' (L.) Scop.) ====
<!-- opis siewki -->
<gallery>
File:Myrrhis odorata kz09.jpg|Siewka marchewnika anyżowego.
File:Myrrhis odorata kz10.jpg|Siewka marchewnika anyżowego.
</gallery>
{{Siewki roślin flory Polski/Commons|Myrrhis odorata (seedlings)|siewki marchewnika anyżowego}}
=== Kropidło (''Oenanthe'') ===
==== [[w:Kropidło wodne|Kropidło wodne]] (''Oenanthe aquatica'' (L.) Poir.) ====
<!-- opis siewki -->
<gallery>
File:Oenanthe aquatica kz01.jpg|Siewki kropidła wodnego.
File:Oenanthe aquatica kz04.jpg|Siewka kropidła wodnego.
File:Oenanthe aquatica kz10.jpg|Siewka kropidła wodnego.
File:Oenanthe aquatica kz12.jpg|Siewka kropidła wodnego.
File:Oenanthe aquatica kz06.jpg|Siewka kropidła wodnego.
File:Oenanthe aquatica kz02.jpg|Siewki kropidła wodnego.
</gallery>
{{Siewki roślin flory Polski/Commons|Oenanthe aquatica (seedlings)|siewki kropidła wodnego}}
==== [[w:Kropidło piszczałkowate|Kropidło piszczałkowate]] (''Oenanthe fistulosa'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Kropidło Lachenala|Kropidło Lachenala]] (''Oenanthe lachenalii'' C. C. Gmel.) ====
<!-- opis siewki -->
<gallery>
</gallery>
=== ''Orlaya'' ===
==== [[w:Orlaja wielkokwiatowa|Orlaja wielkokwiatowa]] (''Orlaya grandiflora'' (L.) Hoffm.) ====
<!-- opis siewki -->
<gallery>
File:Orlaya grandiflora 2018-05-06 1570.jpg|Siewka orlai wielkokwiatowej.
</gallery>
{{Siewki roślin flory Polski/Commons|Orlaya wielkokwiatowa (seedlings)|siewki orlai wielkokwiatowej}}
=== Pasternak (''Pastinaca'') ===
==== [[w:Pasternak zwyczajny|Pasternak zwyczajny]] (''Pastinaca sativa'' L.) ====
<!-- opis siewki -->
<gallery>
File:Pastinaca sativa 2018-08-29 7366.jpg|Siewki pasternaka zwyczajnego.
File:Pastinaca sativa kz07.jpg|Siewka pasternaka zwyczajnego.
File:Pastinaca sativa 2018-09-10 7821.jpg|Siewka pasternaka zwyczajnego.
File:Pastinaca sativa 2018-09-07 7756.jpg|Siewki pasternaka zwyczajnego.
File:Pastinaca sativa 2018-09-12 7921.jpg|Siewka pasternaka zwyczajnego.
File:Pastinaca sativa 2018-09-25 2054.jpg|Siewka pasternaka zwyczajnego.
File:Pastinaca sativa subsp. sativa young plant, pastinaak jonge plant (1).jpg|Siewka pasternaka zwyczajnego.
</gallery>
{{Siewki roślin flory Polski/Commons|Pastinaca sativa (seedlings)|siewki pasternaka zwyczajnego}}
=== Gorysz (''Peucedanum'') ===
==== [[w:Gorysz alzacki|Gorysz alzacki]] (''Peucedanum alsaticum'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Gorysz siny|Gorysz siny]] (''Peucedanum cervaria'' (L.) Cusson ex Lapeyr.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Gorysz pagórkowy|Gorysz pagórkowy]] (''Peucedanum oreoselinum'' (L.) Moench) ====
<!-- opis siewki -->
<gallery>
File:Oreoselinum majus kz01.jpg|Siewka gorysza pagórkowego.
File:Oreoselinum majus kz05.jpg|Siewka gorysza pagórkowego.
File:Oreoselinum majus kz02.jpg|Siewka gorysza pagórkowego.
File:Oreoselinum majus kz08.jpg|Siewka gorysza pagórkowego.
File:Oreoselinum majus kz04.jpg|Siewki gorysza pagórkowego.
File:Oreoselinum majus kz11.jpg|Siewki gorysza pagórkowego.
</gallery>
{{Siewki roślin flory Polski/Commons|Oreoselinum majus (seedlings)|siewki gorysza pagórkowego}}
==== [[w:Gorysz miarz|Gorysz miarz]] (''Peucedanum ostruthium'' (L.) W.D.J.Koch) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Gorysz błotny|Gorysz błotny]] (''Peucedanum palustre'' (L.) Moench) ====
<!-- opis siewki -->
<gallery>
File:Thysselinum palustre kz04.jpg|Siewka gorysza błotnego.
File:Thysselinum palustre kz02.jpg|Siewka gorysza błotnego.
File:Thysselinum palustre kz01.jpg|Siewka gorysza błotnego.
</gallery>
{{Siewki roślin flory Polski/Commons|Thysselinum palustre (seedlings)|siewki gorysza błotnego}}
=== Biedrzeniec (''Pimpinella'') ===
==== [[w:Biedrzeniec wielki|Biedrzeniec wielki]] (''Pimpinella major'' (L.) Huds.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Biedrzeniec mniejszy|Biedrzeniec mniejszy]] (''Pimpinella saxifraga'' L.) ====
<!-- opis siewki -->
<gallery>
File:Pimpinella saxifraga kz05.jpg|Siewka biedrzeńca mniejszego.
File:Pimpinella saxifraga kz01.jpg|Siewka biedrzeńca mniejszego.
File:Pimpinella saxifraga kz02.jpg|Siewki biedrzeńca mniejszego.
</gallery>
{{Siewki roślin flory Polski/Commons|Pimpinella saxifraga (seedlings)|siewki biedrzeńca mniejszego}}
=== Żebrowiec (''Pleurospermum'') ===
==== [[w:Żebrowiec górski|Żebrowiec górski]] (''Pleurospermum austriacum'' (L.) Hoffm.) ====
<!-- opis siewki -->
<gallery>
</gallery>
=== ''Pseudorlaya'' ===
==== ''[[w:Pseudorlaya pumila|Pseudorlaya pumila]]'' (L.) Grande ====
<!-- opis siewki -->
<gallery>
</gallery>
=== Żankiel (''Sanicula'') ===
==== [[w:Żankiel zwyczajny|Żankiel zwyczajny]] (''Sanicula europaea'' L.) ====
<!-- opis siewki -->
<gallery>
File:Sanicula europaea kz01.jpg|Siewka żankla zwyczajnego
File:Sanicula europaea kz02.jpg|Siewka żankla zwyczajnego
File:Sanicula europaea kz03.jpg|Siewka żankla zwyczajnego
File:Sanicula europaea kz06.jpg|Siewki żankla zwyczajnego
</gallery>
{{Siewki roślin flory Polski/Commons|Sanicula europaea (seedlings)|siewki żankla zwyczajnego}}
=== Czechrzyca (''Scandix'') ===
==== [[w:Czechrzyca grzebieniowa|Czechrzyca grzebieniowa]] (''Scandix pecten-veneris'' L.) ====
<!-- opis siewki -->
<gallery>
File:Scandix pecten-veneris kz01.jpg|Siewka czechrzycy grzebieniowej.
</gallery>
{{Siewki roślin flory Polski/Commons|Scandix pecten-veneris (seedlings)|siewki czechrzycy grzebieniowej}}
=== Olszewnik (''Selinum'') ===
==== [[w:Olszewnik kminkolistny|Olszewnik kminkolistny]] (''Selinum carvifolia'' (L.) L.) ====
<!-- opis siewki -->
<gallery>
File:Selinum carvifolia kz04.jpg|Siewki olszewnika kminkolistnego.
File:Selinum carvifolia kz01.jpg|Siewka olszewnika kminkolistnego.
File:Selinum carvifolia kz17.jpg|Siewka olszewnika kminkolistnego.
File:Selinum carvifolia kz14.jpg|Siewka olszewnika kminkolistnego.
File:Selinum carvifolia kz19.jpg|Siewka olszewnika kminkolistnego.
</gallery>
{{Siewki roślin flory Polski/Commons|Selinum carvifolia (seedlings)|siewki olszewnika kminkolistnego}}
=== Żebrzyca (''Seseli'') ===
==== [[w:Żebrzyca roczna|Żebrzyca roczna]] (''Seseli annuum'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Żebrzyca kobyla|Żebrzyca kobyla]] (''Seseli hippomorathrum'' L.) ====
<!-- opis siewki -->
<gallery>
</gallery>
=== Koniopłoch (''Silaum'') ===
==== [[w:Koniopłoch łąkowy|Koniopłoch łąkowy]] (''Silaum silaus'' (L.) Schinz & Thell.) ====
<!-- opis siewki -->
<gallery>
</gallery>
=== Marek (''Sium'') ===
==== [[w:Marek szerokolistny|Marek szerokolistny]] (''Sium latifolium'' L.) ====
<!-- opis siewki -->
<gallery>
File:Sium latifolium kz13.jpg|Siewka marka szerokolistnego.
File:Sium latifolium kz14.jpg|Siewka marka szerokolistnego.
File:Sium latifolium kz12.jpg|Siewka marka szerokolistnego.
File:Sium latifolium kz01.jpg|Siewka marka szerokolistnego.
File:Sium latifolium kz03.jpg|Siewka marka szerokolistnego.
File:Sium latifolium kz16.jpg|Siewka marka szerokolistnego.
</gallery>
{{Siewki roślin flory Polski/Commons|Sium latifolium (seedlings)|siewki marka szerokolistnego}}
=== Kłobuczka (''Torilis'') ===
==== ''[[w:Torilis arvensis|Torilis arvensis]]'' (Huds.) Link ====
<!-- opis siewki -->
<gallery>
</gallery>
==== [[w:Kłobuczka pospolita|Kłobuczka pospolita]] (''Torilis japonica'' (Houtt.) DC.) ====
<!-- opis siewki -->
<gallery>
File:Torilis japonica 2019-04-05 9062.jpg|Siewki kłobuczki pospolitej.
Plik:Torilis japonica kz01.jpg|Siewka kłobuczki pospolitej.
Plik:Torilis japonica kz06.jpg|Siewka kłobuczki pospolitej.
File:Torilis japonica 2019-03-21 7679.jpg|Siewka kłobuczki pospolitej.
Plik:Torilis japonica kz07.jpg|Siewka kłobuczki pospolitej.
File:Torilis japonica 2019-04-08 9417.jpg|Siewka kłobuczki pospolitej.
File:Torilis japonica 2019-04-21 1823.jpg|Siewki kłobuczki pospolitej.
</gallery>
{{Siewki roślin flory Polski/Commons|Torilis japonica (seedlings)|siewki kłobuczki pospolitej}}
==== ''[[w:Torilis nodosa|Torilis nodosa]]'' (L.) Gaertn. ====
<!-- opis siewki -->
<gallery>
</gallery>
=== Turgenia (''Turgenia'') ===
==== [[w:Turgenia szerokolistna|Turgenia szerokolistna]] (''Turgenia latifolia'' (L.) Hoffm.) ====
<!-- opis siewki -->
<gallery>
</gallery>
{{przypisy}}
{{Nawigacja|Siewki roślin flory Polski|[[Siewki roślin flory Polski/Araliowate|Araliowate]]|[[Siewki roślin flory Polski/Autorzy|Autorzy]]}}
9w29wnmzi4rulbahf5k8twv4sz88ep5
Szablon:SkomplikowanaStronaStart
10
33316
439028
430344
2022-08-29T08:25:09Z
Persino
2851
wikitext
text/x-wiki
<includeonly>{{StronaStart
| formatowanie = tak
| boczne menu = tak
| limit = {{{limit|}}}
<!-- Parametry dodatkowe -->
| wstęp = {{{wstęp|}}}
| zakończenie = {{{zakończenie|}}}
| nagłówek = {{{nagłówek|}}}
| stopka = {{{stopka|}}}
| nagłówek strony = {{{nagłówek strony|}}}
| stopka strony = {{{stopka strony|}}}
| nagłówek lewy = {{{nagłówek lewy|}}}
| stopka lewa = {{{stopka lewa|}}}
| nagłówek prawy = {{{nagłówek prawy|}}}
| stopka prawa = {{{stopka prawa|}}}<!--
Nagłówki i stopki - koniec
-->}}</includeonly><noinclude>{{Dokumentacja}}</noinclude>
tr76a1r5y8q82bdg3ueqgu1vmqw5ffe
Wikibooks:Prośby do administratorów interfejsu/Zgłoszenia
4
33868
439017
438697
2022-08-29T05:26:35Z
Persino
2851
/* Dalsze poprawki w {{LinkKomunikat2|common.js}} względem {{LinkUżytkownik2|Persino/common.js}} */
wikitext
text/x-wiki
<noinclude>__LINKNOWEJSEKCJI__ [[Kategoria:Księga próśb i zadań]]</noinclude>
{{fmbox|tekst=UWAGA: Nowe zgłoszenia o innym temacie niż to co dotyczy [[Wikibooks:Prośby do administratorów interfejsu/Zgłoszenia]] lub łamiące zasady [[Wikibooks:Wikietykieta|Wikietykiety]] mogą być bezwarunkowo wycofywane z tej strony}}
<!-- Nowe zgłoszenia wstawiaj poniżej tej linii. Powyżej tej linii nic nie usuwaj. Nie usuwaj tej linii -->
== Usunięcie wymuszenia białego tła w tabelach. ==
Zwracam się z prośbą o usunięcie [[MediaWiki:Common.css]] fragmentu
<syntaxhighlight lang="css">
}
+
table.wikitable td,
+
table.prettytable td {
+
background: #f9f9f9;
</syntaxhighlight>
Fragment ten wymusza białe tło w tabelach, co uniemożliwia zastosowanie kolorowych komórek. Takowe bardzo by się przydały np. w opracowywanym przeze [[Zbiór zadań maturalnych/Biologia|Zbiorze zadań maturalnych z Biologii]] jak np. tu: [[:Kategoria:Zbiór zadań maturalnych/podstawa programowa 2017/Biologia/Zakres rozszerzony/Treści nauczania/II/3/1]]. Póki co posiłkuję się obramowaniem, chciałbym jednak docelowo zastosować kolorowanie komórek.
Z góry dziękuję za rozpatrzenie mojej prośby.
[[Wikipedysta:Superjurek|Superjurek]] ([[Dyskusja wikipedysty:Superjurek|dyskusja]]) 22:42, 16 kwi 2021 (CEST)
-----
{{Ping|Superjurek}}Spróbuj użyć zapisu, np.:
<syntaxhighlight lang="css">
background-color: blue !important;
color:white !important;
</syntaxhighlight>
zamiast:
<syntaxhighlight lang="css">
background-color: blue;
color:white;
</syntaxhighlight>
to powinno naprawić cały problem! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:05, 27 maj 2022 (CEST)
:@[[Wikipedysta:Persino|Persino]]: Dziękuję :) [[Wikipedysta:Superjurek|Superjurek]] ([[Dyskusja wikipedysty:Superjurek|dyskusja]]) 09:23, 25 sie 2022 (CEST)
==Wstawianie kodu do {{LinkKomunikat2|Common.js}}==
Czy mógłbyś wsadzić do tej strony {{Code|.js}} kod:
<syntaxhighlight lang="JavaScript">
function WyswietlStronyKsiazki(){
function WikikodTitle(data,tabs,titles,tabstrona){
var title=data.parse.title;
var wikikod=data.parse.text['*'];
var elements=tabstrona[title];
for(var q in elements){
elements[q].innerHTML=wikikod;
var a=elements[q].getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
var lena=a.length;
for(var i=0;i<lena;++i){
var href=a[i].getAttribute('href');
if(href!==null){
var re=/^[^\?]+\?[^&]+=[^&]*&?/g;
if(!re.test(href)){
var re2=/#/g;
var s=href.search(re2);
if(s!=-1){
var re=/^\/wiki\//g;
if(re.test(href)){
var href2=href.substring(6,s)
href2=decodeURI(href2);
href2=href2.replace(/[_\s]+/g," ");
for(var s=0;s<titles.length;s++){
var strona=titles[s];
if(href2==strona){
var href3=href.replace(/^[^#]*/g,"");
var a_toc=a[i];
a_toc.setAttribute('href',encodeURI(href3));
a_toc.setAttribute("title","");
}
}
}
}else{
var re=/^\/wiki\//g;
if(re.test(href)){
var hrefv=href.replace(re,"");
var hrefs=decodeURI(hrefv);
hrefs=hrefs.replace(/[_\s]+/g," ");
for(var s=0;s<titles.length;s++){
var strona=titles[s];
if(hrefs==strona){
var hrefs2=hrefv.replace(/^[^\/]*\//g,"");
var a_toc=a[i];
a_toc.setAttribute('href','#'+hrefs2);
a_toc.setAttribute("title","");
}
}
}
}
}
}
}
}
}
var tab_toc=new Array("toc","toc_spis");
for(var d=0;d<tab_toc.length;++d){
var toc=document.getElementsByClassName(tab_toc[d]);
if((toc!==null)&&(toc.length>0)){
for(var q in elements){
var num=new Array();
var v=0;
for(var e=0;e<tabs.length;++e){
if(tabs[e]==title){
v+=1;
if(parseInt(q)+1==v){
num.push(parseInt(e)+1);
break;
}
}
}
var headline=elements[q].getElementsByClassName("mw-headline");
if((headline!==null)&&(headline.length>0)){
var ulozenie=0;
var ostanie=0;
var len=headline.length;
var naglowek="";
var liczba_ulozenia_w_menu_spisu_tresci=1;
var h_number=1;
for (var k=0;k<len;++k){
var element2=headline[k];
var nag=element2.innerHTML;
var nag2=element2.getAttribute('id');
var h=element2.parentNode.tagName;
var h_numer=h.replace(/^[^\d]+/g,"");
h_numer=parseInt(h_numer)
if((ulozenie==0)||(ulozenie>=h_numer)){
ulozenie=h_numer-1;
}else {
if(ostatnie+1<h_numer-ulozenie){
ulozenie=h_numer-ostatnie-1;
}
}
ostatnie=h_numer-ulozenie;
h_numer=h_numer-ulozenie;
if(k==0){
num.push(1);
var nag="<span class=\"tocnumber\">"+num.join('.')+"</span><span class=\"toctext\">"+nag+"</span>";
naglowek+="<ul><li><a href=\"#"+nag2+"\">"+nag+"</a>";
}else{
if(h_numer==liczba_ulozenia_w_menu_spisu_tresci){
num[num.length-1]+=1;
var nag="<span class=\"tocnumber\">"+num.join('.')+"</span><span class=\"toctext\">"+nag+"</span>";
naglowek+="</li><li><a href=\"#"+nag2+"\">"+nag+"</a>";
}else{
if(h_numer>liczba_ulozenia_w_menu_spisu_tresci){
num.push(1);
var nag="<span class=\"tocnumber\">"+num.join('.')+"</span><span class=\"toctext\">"+nag+"</span>";
naglowek+="<ul><li><a href=\"#"+nag2+"\">"+nag+"</a>";
liczba_ulozenia_w_menu_spisu_tresci=h_numer;
}else{
if(h_numer<liczba_ulozenia_w_menu_spisu_tresci){
num.splice(num.length-liczba_ulozenia_w_menu_spisu_tresci+h_numer,liczba_ulozenia_w_menu_spisu_tresci-h_numer);
num[num.length-1]+=1;
var nag="<span class=\"tocnumber\">"+num.join('.')+"</span><span class=\"toctext\">"+nag+"</span>";
naglowek+=('</li></ul>'.repeat(liczba_ulozenia_w_menu_spisu_tresci-h_numer))+"</li><li><a href=\"#"+nag2+"\">"+nag+"</a>";
liczba_ulozenia_w_menu_spisu_tresci=h_numer;
}
}
}
}
}
if(naglowek!=""){
naglowek+=('</li></ul>'.repeat(liczba_ulozenia_w_menu_spisu_tresci));
for(var b=0;b<toc.length;++b){
var a2=toc[b].getElementsByTagName('a');
if((a2!=null)&&(a2.length>0)){
for(var y=0;y<a2.length;++y){
var parent=a2[y].parentNode;
var href=a2[y].getAttribute('href');
href=href.replace(/^#/g,"");
var title2=title.replace(/^[^\/]+\//g,"");
if(href==title2.replace(/[_ ]+/g,"_")+((q>0)?("_"+(parseInt(q)+1)):"")){
var div=document.createElement('div');
div.innerHTML=naglowek;
var links=a2[y].getElementsByClassName('toctext');
if((links!=null)&&(links.length>0)){
var link=links[0].innerHTML;
if(link==title2){
parent.appendChild(div.getElementsByTagName('ul')[0]);
}
}
}
}
}
}
}
}
}
}
}
for(var d=0;d<tab_toc.length;++d){
var toc_pos=document.getElementsByClassName(tab_toc[d]);
if((toc_pos!==null)&&(toc_pos.length>0)){
for(var w=0;w<toc_pos.length;++w){
var li=toc_pos[w].getElementsByTagName('li');
var poziom;
var section=1;
for(var z=0;z<li.length;++z){
var parent=li[z].parentNode.parentNode;
if(parent!==null){
var klasa=parent.getAttribute('class');
if(klasa!==null){
var poziom=klasa.match(/toclevel-\d+/g);
if(poziom!==null){
poziom=parseInt(poziom.toString().match(/\d+$/).toString())+1;
}else{
poziom=1;
}
}else{poziom=1;}
}else{poziom=1;}
var klasa=li[z].getAttribute('class');
if(klasa!==null){
var czy_section=klasa.match(/tocsection-\d+/);
if(czy_section!==null){
klasa=klasa.replace(/tocsection-\d+/g,"tocsection-"+section);
li[z].setAttribute('class',klasa);
}else{
li[z].classList.add("tocsection-"+section);
}
var czy_level=klasa.match(/toclevel-\d+/);
if(czy_level!==null){
klasa=li[z].getAttribute('class');
klasa=klasa.replace(/toclevel-\d+/g,"toclevel-"+poziom);
li[z].setAttribute('class',klasa);
}else{
li[z].classList.add("toclevel-"+poziom);
}
}else{
li[z].setAttribute('class',"toclevel-"+poziom+" tocsection-"+section)
}
section=section+1;
}
}
}
}
var headline=document.getElementsByClassName('mw-headline');
if((headline)&&(headline.length>0)){
for(var i=0;i<headline.length;++i){
var c=1;
var el=headline[i];
var id0=el.innerHTML;
id0=id0.replace(/[_\s]+/g,"_");
id0=id0.replace(/<[^<>]+>/g,"");
for(var j=0;j<i;++j){
var el1=headline[j];
var id1=el1.innerHTML;
id1=id1.replace(/[_\s]+/g,"_");
id1=id1.replace(/<[^<>]+>/g,"");
if(id0==id1){
++c;
}
}
if(c==1){
el.setAttribute('id',id0);
}else{
el.setAttribute('id',id0+"_"+c);
}
}
}
var tab_toc=new Array("toc","toc_spis");
for(d=0;d<tab_toc.length;++d){
var toc_pos=document.getElementsByClassName(tab_toc[d]);
if((toc_pos!==null)&&(toc_pos.length>0)){
for(var w=0;w<toc_pos.length;++w){
var toc=toc_pos[w];
var a=toc.getElementsByTagName('a');
if((a)&&(a.length>0)){
for(var p=0;p<a.length;++p){
var strona=a[p].getElementsByClassName('toctext')[0].innerHTML.replace(/[_\s]+/g,"_");
strona=strona.replace(/<[^<>]+>/g,"");
var c=1;
for(var v=0;v<p;++v){
var strona2;
strona2=a[v].getElementsByClassName('toctext')[0].innerHTML.replace(/[_\s]+/g,"_");
strona2=strona2.replace(/<[^<>]+>/g,"");
if(strona==strona2){
++c;
}
}
strona=strona.replace(/<[^<>]+>/g,"");
if(c==1){
a[p].setAttribute('href',"#"+strona);
}else{
a[p].setAttribute('href',"#"+strona+"_"+c);
}
}
}
}
}
}
}
function StronaSubst(data){
var wikikod=data.parse.text['*'];
var elem=document.createElement('div');
elem.innerHTML=wikikod;
var klasa_mw_parser_out=elem.getElementsByClassName('mw-parser-output');
var wikikod_wyodrepniony=(((klasa_mw_parser_out)&&(klasa_mw_parser_out.length==1))?(klasa_mw_parser_out[0].innerHTML):wikikod);
var czy_wikikod=wikikod_wyodrepniony.match(/^\s*$/g);
if(czy_wikikod){return;}
var strona_subst="strona_subst";
var tagclass=document.getElementsByClassName(strona_subst);
if(tagclass==null){return null;}
var liczba_elementow=tagclass.length;
if(liczba_elementow==0){return null;}
var titles=new Array();
var tabstrona=new Array();
var tabs=new Array();
for (var i=0;i<liczba_elementow;++i){
var element=tagclass[i];
if(element.tagName!="DIV"){return null;}
var strona=element.innerHTML;
var re = /^[_ ]*$/g;
var dopasowanie = re.test(strona);
if(dopasowanie){return null;};
strona=strona.replace(/^[_ ]*/g,"");
strona=strona.replace(/[_ ]*$/g,"");
strona=strona.replace(/[_ ]+/g," ");
tabs[i]=strona;
var czy=false;
for(var d in titles){
if(titles[d]==strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=strona;
}
if(tabstrona[strona]==null){
tabstrona[strona]=new Array();
}
var tab=tabstrona[strona];
var tablen=tab.length;
tabstrona[strona][tablen]=element;
}
for ( var p in titles ) {
var strona=titles[p];
var api=new mw.Api;
api.get({
action: 'parse',
format: 'json',
prop: 'text',
title: strona,
text: '{{:'+strona+'}}',
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext'
}).done(function(data){
WikikodTitle(data,tabs,titles,tabstrona);
});
}
}
var strona = mw.config.get('wgPageName');
var api=new mw.Api;
api.get({
action: 'parse',
format: 'json',
prop: 'text',
title: strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext'
}).done(function(data){
StronaSubst(data)
});
}
$(WyswietlStronyKsiazki);
</syntaxhighlight>
Ten program {{Code|.js}} znajduje się na stronie: {{LinkUżytkownik2|Persino/common.js}}. Jak wstawisz ten kod do strony {{LinkKomunikat2|Common.js}}, to powinno wtedy zadziałać ładowanie modułów książki, za pomocą JavaScript, na stronie {{LinkUżytkownik2|Persino/Wersja do druku}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 09:09, 13 lis 2021 (CET)
== Gadżet StronaSubst - dodawanie do listy gadżetów ==
Mamy sobie kod JavaScript {{LinkUżytkownik2|Persino/Gadget-StronaSubst.js}} i opis gadżetu {{LinkUżytkownik2|Persino/Gadget-StronaSubst}}, czy mógłbyś przenieść na strony w przestrzeni nazw {{Np|MediaWiki|link=tak}}, i wywołaniu gadżetu w takiej formie jak w {{LinkUżytkownik2|Persino/Gadgets-definition}} przenieść na stronę {{LinkKomunikat2|Gadgets-definition}}. Wtedy strona {{LinkUżytkownik2|Persino/Wersja do druku}} powinna działać! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 14:14, 27 lis 2021 (CET)
=== Zamienianie kodu {{LinkKomunikat2|Gadget-StronaSubst.js}} na {{LinkUżytkownik2|Persino/Gadget-StronaSubst.js}} w {{LinkKomunikat2|Gadget-StronaSubst.js}} ===
{{Ping|Wargo}}Chodzi tutaj, że jak będzie link do artykułu w nagłówku, to, żeby nie pojawiało się pole '''[ artykuł | edytuj ]''' zamiast '''[ edytuj ]''' - aktualnie w {{LinkKomunikat2|Gadget-StronaSubst.js}} pole '''[ artykuł | edytuj ]''' pojawia się zawsze zamiast '''[ edytuj ]''', wtedy gdy ma zawartość '''strona_subst''' jest nie pusta, to algorytm jest zakańczany. A jak jest nazwa strony w zawartości div-a '''strona_subst''', a nie link w nagłówku, to wtedy ma się prawo pojawić '''[ artykuł | edytuj ]''' zamiast '''[ edytuj ]'''. Czy mógłbyś wersję {{LinkKomunikat2|Gadget-StronaSubst.js}} zamienić na {{LinkUżytkownik2|Persino/Gadget-StronaSubst.js}} w {{LinkKomunikat2|Gadget-StronaSubst.js}}. Z góry dziękuję za rozpatrzenie mojej prośby! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 10:13, 30 lis 2021 (CET)
----
{{Ping|Wargo}} Jeszcze, czy mógłbyś zamienić tekst w {{LinkKomunikat2|Gadget-StronaSubst}} z:
{{Pre|(bez sekcji "Spis treści" i "Licencja")}}
na
{{Pre|(bez sekcji "Spis treści", "Bibliografia" i "Licencja")}}
[[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 19:18, 1 gru 2021 (CET)
=== Ostatnia poprawka kodu {{LinkKomunikat2|Gadget-StronaSubst.js}} na {{LinkUżytkownik2|Persino/Gadget-StronaSubst.js}} w {{LinkKomunikat2|Gadget-StronaSubst.js}}===
{{Ping|Wargo}}Chodzi tutaj, że algorytm zawiesza się na artykule {{LinkGłówna|Mechanika kwantowa/Mechanika kwantowa}}, to co poprawiłem już tak przestaje być, błąd znikł! Czy mógłbyś dokonać zamianę kodu? Proszę o pilną reakcję. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:30, 3 gru 2021 (CET)
=== Miejmy nadzieję, że to jest ostatnia poprawka kodu {{LinkKomunikat2|Gadget-StronaSubst.js}} na {{LinkUżytkownik2|Persino/Gadget-StronaSubst.js}} w {{LinkKomunikat2|Gadget-StronaSubst.js}}===
{{Ping|Wargo}}Chodzi tutaj, że algorytm ma błędy JavaScript na stronie, przy danej książce: {{LinkGłówna|Szachy}}, czyli przy artykule: {{LinkGłówna|Szachy/Szachy}} - błąd tylko widać, gdy chcemy zbadać element, moja poprawka usuwa ten błąd! Czy mógłbyś dokonać zamianę kodu? Proszę o pilną reakcję. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:50, 4 gru 2021 (CET)
=== Następna poprawka kodu {{LinkKomunikat2|Gadget-StronaSubst.js}} na {{LinkUżytkownik2|Persino/Gadget-StronaSubst.js}} w {{LinkKomunikat2|Gadget-StronaSubst.js}} ===
{{Ping|Wargo}}Chodzi tutaj, że algorytm nie wyświetla w TOC (wbudowany spis treści) podrozdziałów dla artykułu {{LinkGłówna|Matematyka dla liceum/Matematyka dla liceum}}, moja poprawka usuwa ten błąd. Skrypt porządkuje artykuły według nagłówków na stronie tego artykułu w TOC, a zestaw artykułów, w danek sekcji, wyświetla, również w TOC, je przydzielone do niej. Czy mógłbyś dokonać zamianę kodu? Proszę o pilną reakcję. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 14:51, 7 gru 2021 (CET)
=== Poważne poprawki w {{LinkKomunikat2|Gadget-StronaSubst.js}} na podstawie {{LinkUżytkownik2|Persino/Gadget-StronaSubst.js}} oraz dodanie i zmiana pewnych gadżetów ===
{{Ping|Wargo}} Następne poprawki dotyczące wpisu w {{LinkKomunikat2|Gadget-StronaSubst.js}}, co do zauważonych drobnych błędów, czyli mógłbyś dokonać zamiany kodu {{LinkKomunikat2|Gadget-StronaSubst.js}} na {{LinkUżytkownik2|Persino/Gadget-StronaSubst.js}} w {{LinkKomunikat2|Gadget-StronaSubst.js}}.
Z góry dziękuję. Poza tym wszystko działa, od razu dziękuję! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 19:32, 8 gru 2021 (CET)
----
{{Ping|Wargo}} Jeszcze, czy mógłbyś zamienić tekst w {{LinkKomunikat2|Gadget-StronaSubst}} z:
{{Pre|(bez sekcji "Spis treści", "Bibliografia" i "Licencja")}}
na
{{Pre|(bez sekcji: "Spis treści", "Bibliografia", "Zobacz też", "Inne", "Licencja" i tym podobne)}}
Dziękuję. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 05:43, 9 gru 2021 (CET)
----
{{Ping|Wargo}} Czy mógłbyś uzupełnić {{LinkKomunikat2|Gadgets-definition}}, według {{LinkUżytkownik2|Persino/Gadgets-definition}} - szczególnie trzeba naprawić odwołanie do gadżetu StronaSubst, i dodać gadżety: {{LinkUżytkownik2|Persino/Gadget-gConfig.js}} (jego opis jest w {{LinkUżytkownik2|Persino/Gadget-gConfig}}), przenosząc go do {{LinkKomunikat2|Gadget-gConfig.js}} (jego opis do {{LinkKomunikat2|Gadget-gConfig}}), a także drugi gadżet dotyczący szablonu {{s|Cytuj}} przenieś z {{LinkUżytkownik2|Persino/Gadget-citation-access-info.js}} (jego opis to {{LinkUżytkownik2|Persino/Gadget-citation-access-info}}) do {{LinkKomunikat2|Gadget-citation-access-info.js}} (a jego opis do {{LinkKomunikat2|Gadget-citation-access-info}}).
Gadżet '''gConfig''' potrzebny mi jest do gadżetu {{LinkUżytkownik2|Persino/Gadget-StronaSubst.js}}, którego zawartość należy przenieść do {{LinkKomunikat2|Gadget-StronaSubst.js}}, a gadżet {{LinkUżytkownik2|Persino/Gadget-citation-access-info.js}}, potrzebny mi jest do szablonu {{s|Cytuj}} do dymku do pełnej wersji tego szablonu, który należy przenieść do {{LinkKomunikat2|Gadget-citation-access-info.js}}.
Proszę o pilną reakcję! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:04, 11 gru 2021 (CET)
----
Również proszę o zastąpienie strony komunikatu {{LinkKomunikat2|Gadget-map-toggler.js}} stroną {{LinkUżytkownik2|Persino/Gadget-map-toggler.js}}. Z góry dziękuję! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 18:38, 11 gru 2021 (CET)
== Zamiana wartości linkowej i szablonowej ==
{{Ping|Wargo}}Czy mógłbyś zamienić na stronie: {{LinkUżytkownik2|Rychozol/common.js}}, z wartości: {{Nowiki|[[GNU Free Documentation License|GFDL]]}}, na: {{Nowiki|[[Wikibooks:GNU Free Documentation License|GFDL]]}}, a także na tej samej stronie wartość: {{s|clear}}, na {{s|BrClear}}, ponieważ ze względu na zmianę nazw stron. Z góry dziękuję! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 09:35, 13 gru 2021 (CET)
<del>== Dalsze zmiany na stronach gadżetów (pilne) ==
{{Ping|Wargo}}Czy mógłbyś zainstalować gadżet "Gadget-gConfig", tak jak na stronie {{LinkUżytkownik2|Persino/Gadgets-definition}} (pierwsza linijka) w {{LinkKomunikat2|Gadgets-definition}}, a co do tego, jego kod {{LinkUżytkownik2|Persino/Gadget-gConfig.js}} zainstalować w miejscu {{LinkKomunikat2|Gadget-gConfig.js}} (jego opis jest w {{LinkUżytkownik2|Persino/Gadget-gConfig}}), przenosząc go do {{LinkKomunikat2|Gadget-gConfig.js}} (jego opis do {{LinkKomunikat2|Gadget-gConfig}}). A później zaaktualizuj gadżet {{LinkKomunikat2|Gadget-StronaSubst.js}} na {{LinkUżytkownik2|Persino/Gadget-StronaSubst.js}} w {{LinkKomunikat2|Gadget-StronaSubst.js}}, a także zainstalować w miejscu {{LinkKomunikat2|Gadget-Funkcje.js}} gadżet {{LinkUżytkownik2|Persino/Gadget-Funkcje.js}}, a również zaktualizować wpis dla gadżetu StronaSubst tak jak w {{LinkUżytkownik2|Persino/Gadgets-definition}}. A później sprawdzić, czy wszystko działa. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 13:19, 4 lut 2022 (CET)</del>
== Przepełnienie scrollbarów, poszczególnych elementów strony, a ustawienia różnych klas, jeżeli takowe istnieją ==
{{Ping|Wargo}}Czy mógłbyś uwzględnić na stronie {{LinkKomunikat2|Common.js}} część mojej strony, która jest po sekwencji /**/, będąca na stronie {{LinkUżytkownik2|Persino/common.js}}. Ten skrypt sprawdza, czy nastąpiło przepełnienie elementów strony dokumentu HTML Wikibooks, a jeżeli nastąpiło, to następuje ustawienie tam odpowiednich klas, a jeżeli ono znikło, to usunięcie tych klas. Ten skrypt jest mi potrzebny do szablonu {{s|StronaStart}} i jego pokrewnych oraz do mojego ustawienia skórki vector-2022, która jest w mojej przestrzeni użytkownika. Dziękuję za spełnienie mojej prośby. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 19:23, 27 maj 2022 (CEST)
== Aktualizacja przepełnienia scrollbarów i implementacja sticky ==
{{Ping|Wargo}} Czy mógłbyś uwzględnić na stronie {{LinkKomunikat2|Common.js}} część mojej strony, która jest po sekwencji /**/, będąca na stronie {{LinkUżytkownik2|Persino/common.js}}. W przypadku pierwszego algorytmu, dodałem tam klasy {{Code|mw-overflow-x}} i {{Code|mw-overflow-y}}, które ten algorytm rozpoznaje, i dla nich liczy, czy nastąpiło to właśnie przepełnienie. A wcześniej liczyło dla wszystkich znaczników na stronie, co spowalniało całą stronę. Tam, gdzie, ważne jest liczenie przepełnienie wstawiłem {{Code|mw-overflow-x}}, czy {{Code|mw-overflow-y}}, czyli algorytm ten tam powinien działać, co można sprawdzić na stronie głównej tego projektu ({{NAZWASERWISU|link=tak}}). Drugi algorytm jest rozszerzenie właściwości {{Code|position:sticky}}, który on nie działa, gdy choćby jeden z rodziców jest z nie {{Code|overflow:visible}}, ale z {{Code|overflow}}, a ja zrobiłem, że jednak zaczeło działać, a ja tak to zrobiłem: {{Code|position:sticky}} zastąpiłem {{Code|position:absolute}}, w tym znaczników ustawiam {{Code|mw-sticky-y}} (przesuw w pionie) lub {{Code|mw-sticky-x}} (przesuw w poziomie), wtedy ten algorytm JavaScript działa tak, że pudełko przesuwa się od pewnej granicy do pewnej, ale nigdy nie wychodzi poza te granice, czyli działa podobnie jak {{Code|position:sticky}}. Dziękuję za spełnienie mojej prośby. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 12:41, 9 lip 2022 (CEST)
==Aktualizacja skryptów na {{LinkKomunikat2|common.js}} z {{LinkUżytkownik2|Persino/common.js}}==
{{Ping|Wargo}} Czy mógłbyś zaktualizować kod na stronie {{LinkKomunikat2|common.js}} ze strony {{LinkUżytkownik2|Persino/common.js}} pod znakiem {{Code|/**/}}. Zdefiniowałem przestrzeń nazw {{Code|Common}} definicją:
{{Pre|var Common{{=}}new Array();}}
Prawie wszystkie funkcje ze strony {{LinkKomunikat2|common.js}} przeniosłem do tej przestrzeni na stronie {{LinkUżytkownik2|Persino/common.js}} (tutaj wszystkie funkcje są w przestrzeni {{Code|Common}}). Rozwinąłem funkcję {{Code|Common.ScrollBarOverflow}}, {{Code|Common.StickyXY}} i {{Code|Common.OptimalXY}}. Napisałem od nowa funkcje: {{Code|Common.RamkiTableIDiv}} i {{Code|Common.ZdarzeniaDodatkoweFunkcyjneXY}} oraz funkcję do obsługi szablonu {{s|StronaStart}} i jego pokrewnych książkowych z definiowałem w postaci: {{Code|Common.StronaStart}}.
Co oznaczają te funkcje:
* {{Code|Common.ScrollBarOverflow}} - do generowania pewnych klas, które służą do obsługi pudełka z paskami przewijania,
* {{Code|Common.StickyXY}} - aktualizacja funkcji {{Code|position:sticky}}, tam gdzie go nie można go użyć, do używamy tej funkcji,
* {{Code|Common.OptimalXY}} - do obsługi boksów na stronach z użytymi szablonami stronicowymi książkowymi otwierającymi i zamykającymi,
* {{Code|Common.RamkiTableIDiv}} - dodaje dalsze funkcje przy przyciskach tabel i ramek, nawigacyjnych,
* {{Code|Common.ZdarzeniaDodatkoweFunkcyjneXY}} - dodaje zdarzenia do obsługi funkcji: {{Code|Common.StickyXY}} i {{Code|Common.OptimalXY}},
* {{Code|Common.StronaStart}} - służy do obsługi spisu treści i boksów szablonu {{s|StronaStart}}.
Na stronach podręcznikowych boksy i spisy treści są responsywne według moich ustawień, a dla wszystkich użytkowników będą responsywne po zaktualizowaniu strony {{LinkKomunikat2|common.js}} przy pomocy {{LinkUżytkownik2|Persino/common.js}}.
----
Proszę o pilną reakcję i zrealizowanie mojej prośby. Z góry dziękuję. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 15:55, 3 sie 2022 (CEST)
:Czy coś jest do usunięcia z obecnego common.js? Tj. czy coś stamtąd mam tym zastąpić? [[Wikipedysta:Wargo|Wargo]] ([[Dyskusja wikipedysty:Wargo|dyskusja]]) 20:55, 7 sie 2022 (CEST)
::{{Ping|Wargo}}Właśnie masz zastąpić nową wersją z pod /**/ z: {{LinkUżytkownik2|Persino/common.js}}, zastępując całą zawartość strony w: {{LinkKomunikat2|common.js}}. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:04, 7 sie 2022 (CEST)
:::{{Ping|Wargo}} Już możesz zastępować, wszystko gotowe! [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 21:39, 7 sie 2022 (CEST)
===Ostatnia poprawka===
{{Ping|Wargo}}Czy mógłbyś linijkę kodu:
{{Pre|var top_ab{{=}}rect_rodzic[top]-margintop;
var bottom_ab{{=}}(wys-rect_rodzic[bottom])-marginbottom;
}}
poprawić na:
{{Pre|var top_ab{{=}}rect_rodzic[top];
var bottom_ab{{=}}(wys-rect_rodzic[bottom]);
}}
w funkcji: {{Code|Common.StickyXY}}, w {{LinkKomunikat2|common.js}} według {{LinkUżytkownik2|Persino/common.js}}. Tj. to linijka: 481-482.
Z góry dziękuję za spełnienie mojej prośby. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 09:51, 8 sie 2022 (CEST)
=== Miejmy nadzieję, że ostatnia poprawka na stronie {{LinkKomunikat2|common.js}} ===
{{Ping|Wargo}}Czy mógłbyś w kodzie w linii: 177 i 183, na stronie {{LinkKomunikat2|common.js}} według {{LinkUżytkownik2|Persino/common.js}} poprawić według schematu:
{{Pre
|collapseTable( i );
}}
zamienić na:
{{Pre
|Common.collapseTable( i );
}}
Poprawka jest ważna, bo tabele nawigacyjne, na stronie głównej i gdzieś indziej, nie chcą się kolapsować, a po tej operacji już będą się tak zachowywać!
----
W linii: 176 poprawić:
{{Pre
|1=if ( $(NavigationBoxes[i]).hasClass( "collapsed" ) {{!}}{{!}} ( tableIndex >= Common.autoCollapse && $(NavigationBoxes[i]).hasClass( "Common.autoCollapse" ) ) ) {
}}
na kod:
{{Pre
|1=if ( $(NavigationBoxes[i]).hasClass( "collapsed" ) {{!}}{{!}} ( tableIndex >= Common.autoCollapse && $(NavigationBoxes[i]).hasClass( "autocollapse" ) ) ) {
}}
----
Z góry dziękuję za spełnienie mojej prośby. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 13:34, 8 sie 2022 (CEST)
=== Poprawka, by zdarzenia nie były w postaci podwójnej, tzn. ze strony: {{LinkKomunikat2|common.js}} (strona {{Np|MediaWiki|link=tak}}), i {{LinkUżytkownik2|Persino/common.js}} (strona użytkownika - {{Np|User|link=tak}}) ===
{{Ping|Wargo}}Zrobiłem tak, by zdarzenia nie były w postaci podwójnej, tzn. ze strony MediaWiki: {{LinkKomunikat2|common.js}}, i strony użytkownika: {{LinkUżytkownik2|Persino/common.js}}, jeżeli takową stronę użytkownik posiada. Zrobiłem też tam parę drobnych innych edycji. Mówiąc najprostszej, zawartością z: {{LinkUżytkownik2|Persino/common.js}}, z pod {{Code|/**/}} zastąp zawartość strony: {{LinkKomunikat2|common.js}}. Z góry dziękuję za spełnienie mojej prośby. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 07:13, 9 sie 2022 (CEST)
=== Poprawka strony {{LinkKomunikat2|Gadget-delete-local.js}}, kilka linijek ===
{{Ping|Wargo}} Czy mógłbyś zamienić zawartość strony {{LinkKomunikat2|Gadget-delete-local.js}} na {{LinkUżytkownik2|Persino/Gadget-delete-local.js}}.
Z góry dziękuję za spełnienie mojej prośby. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 07:13, 9 sie 2022 (CEST)
=== Przecieki pamięci w {{LinkKomunikat2|common.js}} w połączeniu z {{LinkUżytkownik2|Persino/common.js}} ===
{{Ping|Wargo}} Czy mógłbyś stronę {{LinkKomunikat2|common.js}} podmienić z zawartością strony {{LinkUżytkownik2|Persino/common.js}} z pod linii /**/. Z góry dziękuję za spełnienie prośby. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 17:37, 15 sie 2022 (CEST)
=== Dalsze poprawki w {{LinkKomunikat2|common.js}} względem {{LinkUżytkownik2|Persino/common.js}} ===
{{Ping|Wargo}} Omówię tu jedną z głównych poprawek: Kiedyś funkcja {{Code|Common.RamkiTableIDiv}} była uruchamiana za pomocą zwykłej funkcji bez umieszczenia go w bloku {{Code|$}}, a teraz jest ona umieszczony właśnie w nim, więc {{Code|Promise}} jest już w nim nie potrzebna, więc usunąłem z tej funkcji właśnie nią, więc funkcję {{Code|Common.RamkiTableIDiv}} musiałem zmodyfikować.
Też menu górne w artykułach przeniosłem nad górną ramką artykułów, która jest uruchamiana jedynie za pomocą JavaScript'u, i teraz nie jest w tej ramce, i oczywiście musiałem zmienić algorytm {{Code|Common.StronaStart}}.
----
Aby dokonać zmian w {{LinkKomunikat2|common.js}}, to zawartość w nim trzeba tutaj zastąpić zawartością z: {{LinkUżytkownik2|Persino/common.js}}, z pod linii /**/.
----
Z góry dziękuję za spełnienie mojej prośby. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 07:26, 29 sie 2022 (CEST)
tflvfm96ps0eslwl7l468iqto0pp4kl
Moduł:Techniczne
828
56417
438983
438879
2022-08-28T15:20:48Z
Persino
2851
Scribunto
text/plain
local p={};
p["ParsujWywołanieSzablonu"] = function(wywolanie_szablonu)
local wywolanie_bez_parametrow=mw.ustring.match(wywolanie_szablonu,"^{{[^{}|]-}}$");
if(not wywolanie_bez_parametrow)then
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*|.-}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
local parametry_wywolania_szablonu=mw.ustring.match(wywolanie_szablonu,"{{[^{}|]*|([^{}]*)}}");
return ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu);
else return nil;end;
else
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
return parametry_szablonu;
else return nil;end;
end;
end;
function ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu)
local kawalek_wywolania,dalszy_kawalek_wywolania=mw.ustring.match(parametry_wywolania_szablonu,"^([^|]*)|(.*)$");
if(not kawalek_wywolania)then
kawalek_wywolania=parametry_wywolania_szablonu;
end;
if(not dalszy_kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return parametry_szablonu;
end;
if(kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return ParametrySzablonu(dalszy_kawalek_wywolania,parametry_szablonu);
end;
return nil;
end;
function ZbierzParametrSzablonu(tworzona_tabela, kawalek_wywolania)
local kawalek_wywolania_element_nienazwany=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*$");
if(kawalek_wywolania_element_nienazwany)then
tworzona_tabela[#tworzona_tabela+1]=mw.text.trim(kawalek_wywolania_element_nienazwany);
return tworzona_tabela;
else
local kawalek_wywolania_klucz,kawalek_wywolania_wartosc=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*=%s*([^|{}]-)%s*$");
if((kawalek_wywolania_klucz)and(kawalek_wywolania_wartosc))then
if(not mw.ustring.match(kawalek_wywolania_klucz,"^%s*%d+%s*$"))then
tworzona_tabela[mw.text.trim(kawalek_wywolania_klucz)]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
else
tworzona_tabela[tonumber(mw.text.trim(kawalek_wywolania_klucz))]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
end;
else
return nil;
end;
end;
return nil;
end;
p["PokażSzablon"]=function(szablon, args)
local result = {}
local flags = {}
table.insert(result, mw.text.nowiki("{{"))
if mw.isSubsting() then
table.insert(result, "subst:")
end
table.insert(result, szablon);
if args then
for k, v in pairs(args) do
if (type(k)~="number")then
table.insert(result, "|")
table.insert(result, tostring(k))
table.insert(result, "=")
table.insert(result, mw.text.nowiki(v))
else
table.insert(result, "|")
table.insert(result, mw.text.nowiki(v))
end
end
end
table.insert(result, mw.text.nowiki("}}"))
return table.concat(result)
end;
function p.NazwaSzablonu(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa,_=PobierzParametr();
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa);
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np")
if(nazwa_przestrzeni==nazwy_np_modul.Template)then
return nazwy_modul["NAZWASTRONY"](nazwa);
elseif(nazwa_przestrzeni==nazwy_np_modul.Main)then
return ":"..nazwa;
else
return nazwa;
end;
end;
p["Pierwszy niepusty"]= function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local i=1;
local parametry_modul=require("Module:Parametry");
local liczba_elementow_w_tablicy_args=parametry_modul["LiczbaElementówNumerowanychZPrzedrostkiemLubNieTablicy"](args,"test");
local licznik=1;
while true do
local test=args["test"..i];
local _i=args[i];
local zmienna=test or _i;
local czy_tak=parametry_modul.CzyTak(zmienna);
if(czy_tak)then
return (_i)and _i or "{{{"..i.."}}}";
end;
if(licznik>=liczba_elementow_w_tablicy_args)then return "";end;
if(zmienna)then licznik=licznik+1;end;
i=i+1;
end;
return;
end;
p["PełnaNazwaOpisuModułu"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local pelna_nazwa_strony=PobierzParametr(1) or PobierzParametr("nazwa");
local komunikat = mw.message.new('Scribunto-doc-page-name', '$1');
local zawartosc_komunikatu;
if(komunikat:exists())then
zawartosc_komunikatu=komunikat:plain();
zawartosc_komunikatu=mw.getCurrentFrame():preprocess(zawartosc_komunikatu);
else
zawartosc_komunikatu="Module:%1/opis";
end;
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony0=nazwy_modul["PEŁNANAZWASTRONY"](zawartosc_komunikatu);
local pelna_nazwa_strony2=pelna_nazwa_strony and nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony) or nazwy_modul["PEŁNANAZWASTRONY"]();
local patternopis=mw.ustring.gsub(pelna_nazwa_strony0,"%$1",".-");
if(not mw.ustring.match(pelna_nazwa_strony2,"^"..patternopis.."$"))then
local nazwa_strony=nazwy_modul["NAZWASTRONY"](pelna_nazwa_strony2);
local przetworzona_nazwa_strony,_=mw.ustring.gsub(nazwa_strony,"(%%)","%%%%");
przetworzona_nazwa_strony,_=mw.ustring.gsub(przetworzona_nazwa_strony,"/%s*$","");
local pelna_nazwa_strony_opisu, _=mw.ustring.gsub(zawartosc_komunikatu,"%$1",przetworzona_nazwa_strony)
local pelna_strona_opisu=nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony_opisu);
return pelna_strona_opisu;
else
return pelna_nazwa_strony2;
end;
end;
p["WzórDanejPrzestrzeniNazw"] = function (frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor, _ = mw.ustring.gsub(nazwa,"(.)",function (s) return ((mw.ustring.match(s,"^%a$"))and("["..mw.ustring.upper(s)..mw.ustring.lower(s).."]")or s);end )
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["CzyIstniejeDanaPrzestrzeńNazw"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa_przestrzeni_nazw_lub_jego_identyfikator=PobierzParametr(1) or PobierzParametr("nazwa");
local uchwyt_przestrzeni_nazw;
if(mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*[%+%-]?%d+%s*$"))then
local identyfikator,_=mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*([%+%-]?%d+)%s*$");
uchwyt_przestrzeni_nazw=mw.site.namespaces[tonumber(mw.text.trim(identyfikator))];
else
uchwyt_przestrzeni_nazw=mw.site.namespaces[nazwa_przestrzeni_nazw_lub_jego_identyfikator];
end;
if(uchwyt_przestrzeni_nazw)then
return "tak";
else
return;
end;
end;
p["WzórNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor,_=mw.ustring.gsub(strona,"([%[%]%(%)%+%-%*%?%.%^%$%%'])","%%%1");
wzor,_=mw.ustring.gsub(wzor,"^(.)",function(s)return "["..mw.ustring.upper(s)..mw.ustring.lower(s).."]";end);
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["WzórPełnejNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_strony=nazwy_modul["NAZWASTRONY"](strona);
if(nazwa_przestrzeni~="")then
nazwa_przestrzeni=p["WzórDanejPrzestrzeniNazw"](nazwa_przestrzeni);
end;
nazwa_strony=p["WzórNazwyStrony"](nazwa_strony);
return ((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..nazwa_strony;
end;
p["TekstBezOdwołańDoParametrówWeWzorze"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"%%(%d+)","%%%%%1");
return tekst;
end;
p["PrzekształćWzórDoCzystegoTekstu"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
return tekst;
end;
function p.PoliczZbiory(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame,true);
local liczba_istniejacych_zbiorow=0;
local tabela_uchwytow_stron={};
for _,nazwa_strony in ipairs(args) do
local uchwyt_strony = mw.title.makeTitle('',nazwa_strony);
local tekst_artykulu = uchwyt_strony and uchwyt_strony:getContent() or nil;
local czy_istnieje=tekst_artykulu and tekst_artykulu or (uchwyt_strony and uchwyt_strony.exists or nil);
tabela_uchwytow_stron[#tabela_uchwytow_stron+1]={uchwyt_strony,tekst_artykulu,};
if(czy_istnieje)then
liczba_istniejacych_zbiorow=liczba_istniejacych_zbiorow+1;
end;
end;
return liczba_istniejacych_zbiorow,tabela_uchwytow_stron;
end;
function p.TransformacjaWzoru(ciag)
return mw.ustring.gsub(ciag,"[%^%$%(%)%%%.%[%]%*%+%-%?]","%%%1");
end;
p["WyświetlajKodySpecjalne"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
text=mw.ustring.gsub(text,"&#(%d+);",i..hash.."%1"..sr);
text=mw.ustring.gsub(text,"&(%a+);",i.."%1"..sr);
return text;
end;
function p.Wikikod(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
text=mw.ustring.gsub(text,"&#(%d+);",i..hash.."%1"..sr);
text=mw.ustring.gsub(text,"&(%a+);",i.."%1"..sr);
local nko=html_modul.KodHTMLZnaku("{");
local nkz=html_modul.KodHTMLZnaku("}");
local k=html_modul.KodHTMLZnaku("|");
local r=html_modul.KodHTMLZnaku("=");
local s=1;
repeat
repeat
text=mw.ustring.gsub(text,"{{{([^{}|]+)|([^{}]*)}}}",nko..nko..nko.."%1"..k.."%2"..nkz..nkz..nkz);
text=mw.ustring.gsub(text,"{{{([^{}|]+)}}}",nko..nko..nko.."%1"..nkz..nkz..nkz);
until not(mw.ustring.match(text,"{{{([^{}|]+)|([^{}]*)}}}") or mw.ustring.match(text,"{{{([^{}|]+)}}}"));
text=mw.ustring.gsub(text,"{{([^{}]+)}}","&#@p"..s..";%1&#@k"..s..";");
repeat
text=mw.ustring.gsub(text,"&#@p"..s..";([^|]-)|(.-)&#@k"..s..";","&#@p"..s..";%1&#@s"..s..";%2&#@k"..s..";");
until not mw.ustring.match(text,"&#@p"..s..";([^|]-)|(.-)&#@k"..s..";");
s=s+1;
until not (mw.ustring.match(text,"{{[^{}]+}}") or (mw.ustring.match(text,"{{{([^{}|]+)|([^{}]*)}}}") or mw.ustring.match(text,"{{{([^{}|]+)}}}")));
for w=1,s-1,1 do
repeat
text=mw.ustring.gsub(text,"(&#@p"..w..";[^#{}|].-)&#@s"..w..";(.-".."&#@k"..w..";)","%1|%2");
until not mw.ustring.match(text,"(&#@p"..w..";[^#{}|].-)&#@s"..w..";(.-".."&#@k"..w..";)");
function ZmienneTekstowe(s)
local tab_zmienne={
["NAMESPACE"]=true,
["PAGENAME"]=true,
}
local czy_te_zmienne=tab_zmienne[s];
if(not czy_te_zmienne)then
return "{{s|"..s.."}}";
else
return nko..nko..s..nkz..nkz;
end;
end;
text=mw.ustring.gsub(text,"&#@p"..w..";([^#{}|].-)".."&#@k"..w..";",ZmienneTekstowe);
repeat
text=mw.ustring.gsub(text,"(&#@p"..w..";#invoke:.-)&#@s"..w..";(.-".."&#@k"..w..";)","%1|%2");
until not mw.ustring.match(text,"(&#@p"..w..";#invoke:.-)&#@s"..w..";(.-".."&#@k"..w..";)");
text=mw.ustring.gsub(text,"&#@p"..w..";#invoke:(.-)".."&#@k"..w..";","{{m|%1}}");
repeat
text=mw.ustring.gsub(text,"(&#@p"..w..";#%w+:.-)&#@s"..s..";(.-".."&#@k"..w..";)","%1"..k.."%2");
until not mw.ustring.match(text,"(&#@p"..w..";#%w+:.-)&#@s"..s..";(.-".."&#@k"..w..";)")
text=mw.ustring.gsub(text,"&#@p"..w..";(#%w+:.-)".."&#@k"..w..";",nko..nko.."%1"..nkz..nkz);
end;
text=mw.ustring.gsub(text,"=",r)
local mniejszy=html_modul.KodHTMLZnaku("<");
local wiekszy=html_modul.KodHTMLZnaku(">");
text=mw.ustring.gsub(text,"<",mniejszy);
text=mw.ustring.gsub(text,">",wiekszy)
local kwaratowy_lewy=html_modul.KodHTMLZnaku("[");
local kwadratowy_prawy=html_modul.KodHTMLZnaku("]");
local kreska_pionowa=html_modul.KodHTMLZnaku("|");
text=mw.ustring.gsub(text,"%[%[([^%[%]|]*)|([^%[%]]*)%]%]",kwaratowy_lewy..kwaratowy_lewy.."%1"..kreska_pionowa.."%2"..kwadratowy_prawy..kwadratowy_prawy);
text=mw.ustring.gsub(text,"%[%[([^%[%]|]*)%]%]",kwaratowy_lewy..kwaratowy_lewy.."%1"..kwadratowy_prawy..kwadratowy_prawy);
text=mw.ustring.gsub(text,"\n#","\n"..hash);
text=mw.ustring.gsub(text,"^#",hash);
text=frame:getParent():preprocess(text);
return text;
end;
p["WikikodStrony"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
return text;
end;
function p.LuaSubst(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local strona=args[1] or args["strona"];
if(not parametry_modul.CzyTak(strona))then return "(Bład: nazwa strony jest pusta lub nie podana)";end;
local title=mw.title.makeTitle('',strona);
if((not title)or (not title.exists))then return "(Bł≥ąd: Strona nie istnieje)";end;
local tekst=title:getContent();
local inkludowany=parametry_modul.CzyTak(args["inkludowana"]);
if(inkludowany)then
tekst,_=mw.ustring.gsub(tekst,"<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>(.-)</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>","");
tekst,_=mw.ustring.gsub(tekst,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.-)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
end;
return tekst;
end;
p["RozwiniętyWikikodStrony"]=function (frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame)
local PobierzParametr=parametry_modul.PobierzParametr(args);
local nazwa=PobierzParametr("Nazwa strony") or PobierzParametr("Nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("Miano przestrzeni nazw") or PobierzParametr("Przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
local bezkluczy={["Nazwa strony"]=true,["Nazwa"]=true,["Miano przestrzeni nazw"]=true,["Przestrzeń"]=true,};
if czy_wyspecjalizowana then
bezkluczy["wyspecjalizowana"]=true;
bezkluczy["nie rozwiń"]=true;
end;
local tab=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,bezkluczy);
local frame2=mw.getCurrentFrame():newChild{title=(parametry_modul.CzyTak(przestrzen)and (przestrzen..":"..nazwa) or nazwa),args=tab};
local czy2=(czy and frame.args);
text=(czy2 and (not parametry_modul.CzyTak(frame.args["nie rozwiń"])) or (not czy2 and true)) and frame2:preprocess(text) or text;
return text;
end;
function p.NowaLinia(frame)
return "\n";
end;
function p.Nowiki(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local PobierzParametr=parametry_modul.PobierzParametr(args);
local tekst=PobierzParametr("tekst") or PobierzParametr(1);
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local h=html_modul.KodHTMLZnaku("#");
local s=html_modul.KodHTMLZnaku(";");
tekst,_=mw.ustring.gsub(tekst,"&#(%d+);",i..h.."%1"..s);
tekst,_=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..s);
local sprawdz_modul=require("Module:Sprawdź");
tekst=sprawdz_modul["UsuńKategorięSprawdzaniaParametrówSzablonu"]{args={[1]=tekst,},}
tekst=frame:callParserFunction('#tag:nowiki',tekst);
return tekst;
end;
function p.FunkcjaLua(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local modul=require("Module:"..(args[1] or args["moduł"]));
if(modul)then
if(modul[asgs[2] or args["nazwa"] or args["funkcja"]])then
local args2=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,{[1]=true,["moduł"]=true,[2]=true,nazwa=true,funkcja=true,["wyspecjalizowana"]=true,})
return modul[asgs[2] or args["nazwa"] or args["funkcja"]](args2);
end;
end;
end;
p["LiczbaBajtówCiąguDoNormy"] = function(frame)
local str=frame.args[1] or frame.args["ciąg"];
local ile=tonumber(frame.args[2] or frame.args["norma"]);
if(not ile)then return #str;end;
if(#str<=ile)then
return #str;
end;
return nil;
end;
p["LiczbaStronJakoPozycjeDanejKategorii"]=function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local kategoria=parametry_modul.CzyTak(args["kategoria"]) and args["kategoria"] or "Category:Przykładowa kategoria";
local kat={
["subcats"]=true,
["files"]=true,
["pages"]=true,
}
local typ=args["typ"] or "all";
typ=kat[args["typ"]] and args["typ"] or "all";
local nazwy_modul=require("Module:Nazwy");
kategoria=nazwy_modul["NAZWASTRONY"](kategoria);
return mw.site.stats.pagesInCategory(kategoria,typ);
end;
return p;
3t0f0b9e2f7bu4xg01zcpi7r6lp9vpk
439021
438983
2022-08-29T07:34:05Z
Persino
2851
Scribunto
text/plain
local p={};
p["ParsujWywołanieSzablonu"] = function(wywolanie_szablonu)
local wywolanie_bez_parametrow=mw.ustring.match(wywolanie_szablonu,"^{{[^{}|]-}}$");
if(not wywolanie_bez_parametrow)then
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*|.-}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
local parametry_wywolania_szablonu=mw.ustring.match(wywolanie_szablonu,"{{[^{}|]*|([^{}]*)}}");
return ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu);
else return nil;end;
else
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
return parametry_szablonu;
else return nil;end;
end;
end;
function ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu)
local kawalek_wywolania,dalszy_kawalek_wywolania=mw.ustring.match(parametry_wywolania_szablonu,"^([^|]*)|(.*)$");
if(not kawalek_wywolania)then
kawalek_wywolania=parametry_wywolania_szablonu;
end;
if(not dalszy_kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return parametry_szablonu;
end;
if(kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return ParametrySzablonu(dalszy_kawalek_wywolania,parametry_szablonu);
end;
return nil;
end;
function ZbierzParametrSzablonu(tworzona_tabela, kawalek_wywolania)
local kawalek_wywolania_element_nienazwany=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*$");
if(kawalek_wywolania_element_nienazwany)then
tworzona_tabela[#tworzona_tabela+1]=mw.text.trim(kawalek_wywolania_element_nienazwany);
return tworzona_tabela;
else
local kawalek_wywolania_klucz,kawalek_wywolania_wartosc=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*=%s*([^|{}]-)%s*$");
if((kawalek_wywolania_klucz)and(kawalek_wywolania_wartosc))then
if(not mw.ustring.match(kawalek_wywolania_klucz,"^%s*%d+%s*$"))then
tworzona_tabela[mw.text.trim(kawalek_wywolania_klucz)]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
else
tworzona_tabela[tonumber(mw.text.trim(kawalek_wywolania_klucz))]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
end;
else
return nil;
end;
end;
return nil;
end;
p["PokażSzablon"]=function(szablon, args)
local result = {}
local flags = {}
table.insert(result, mw.text.nowiki("{{"))
if mw.isSubsting() then
table.insert(result, "subst:")
end
table.insert(result, szablon);
if args then
for k, v in pairs(args) do
if (type(k)~="number")then
table.insert(result, "|")
table.insert(result, tostring(k))
table.insert(result, "=")
table.insert(result, mw.text.nowiki(v))
else
table.insert(result, "|")
table.insert(result, mw.text.nowiki(v))
end
end
end
table.insert(result, mw.text.nowiki("}}"))
return table.concat(result)
end;
function p.NazwaSzablonu(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa,_=PobierzParametr();
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa);
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np")
if(nazwa_przestrzeni==nazwy_np_modul.Template)then
return nazwy_modul["NAZWASTRONY"](nazwa);
elseif(nazwa_przestrzeni==nazwy_np_modul.Main)then
return ":"..nazwa;
else
return nazwa;
end;
end;
p["Pierwszy niepusty"]= function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local i=1;
local parametry_modul=require("Module:Parametry");
local liczba_elementow_w_tablicy_args=parametry_modul["LiczbaElementówNumerowanychZPrzedrostkiemLubNieTablicy"](args,"test");
local licznik=1;
while true do
local test=args["test"..i];
local _i=args[i];
local zmienna=test or _i;
local czy_tak=parametry_modul.CzyTak(zmienna);
if(czy_tak)then
return (_i)and _i or "{{{"..i.."}}}";
end;
if(licznik>=liczba_elementow_w_tablicy_args)then return "";end;
if(zmienna)then licznik=licznik+1;end;
i=i+1;
end;
return;
end;
p["PełnaNazwaOpisuModułu"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local pelna_nazwa_strony=PobierzParametr(1) or PobierzParametr("nazwa");
local komunikat = mw.message.new('Scribunto-doc-page-name', '$1');
local zawartosc_komunikatu;
if(komunikat:exists())then
zawartosc_komunikatu=komunikat:plain();
zawartosc_komunikatu=mw.getCurrentFrame():preprocess(zawartosc_komunikatu);
else
zawartosc_komunikatu="Module:%1/opis";
end;
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony0=nazwy_modul["PEŁNANAZWASTRONY"](zawartosc_komunikatu);
local pelna_nazwa_strony2=pelna_nazwa_strony and nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony) or nazwy_modul["PEŁNANAZWASTRONY"]();
local patternopis=mw.ustring.gsub(pelna_nazwa_strony0,"%$1",".-");
if(not mw.ustring.match(pelna_nazwa_strony2,"^"..patternopis.."$"))then
local nazwa_strony=nazwy_modul["NAZWASTRONY"](pelna_nazwa_strony2);
local przetworzona_nazwa_strony,_=mw.ustring.gsub(nazwa_strony,"(%%)","%%%%");
przetworzona_nazwa_strony,_=mw.ustring.gsub(przetworzona_nazwa_strony,"/%s*$","");
local pelna_nazwa_strony_opisu, _=mw.ustring.gsub(zawartosc_komunikatu,"%$1",przetworzona_nazwa_strony)
local pelna_strona_opisu=nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony_opisu);
return pelna_strona_opisu;
else
return pelna_nazwa_strony2;
end;
end;
p["WzórDanejPrzestrzeniNazw"] = function (frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor, _ = mw.ustring.gsub(nazwa,"(.)",function (s) return ((mw.ustring.match(s,"^%a$"))and("["..mw.ustring.upper(s)..mw.ustring.lower(s).."]")or s);end )
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["CzyIstniejeDanaPrzestrzeńNazw"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa_przestrzeni_nazw_lub_jego_identyfikator=PobierzParametr(1) or PobierzParametr("nazwa");
local uchwyt_przestrzeni_nazw;
if(mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*[%+%-]?%d+%s*$"))then
local identyfikator,_=mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*([%+%-]?%d+)%s*$");
uchwyt_przestrzeni_nazw=mw.site.namespaces[tonumber(mw.text.trim(identyfikator))];
else
uchwyt_przestrzeni_nazw=mw.site.namespaces[nazwa_przestrzeni_nazw_lub_jego_identyfikator];
end;
if(uchwyt_przestrzeni_nazw)then
return "tak";
else
return;
end;
end;
p["WzórNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor,_=mw.ustring.gsub(strona,"([%[%]%(%)%+%-%*%?%.%^%$%%'])","%%%1");
wzor,_=mw.ustring.gsub(wzor,"^(.)",function(s)return "["..mw.ustring.upper(s)..mw.ustring.lower(s).."]";end);
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["WzórPełnejNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_strony=nazwy_modul["NAZWASTRONY"](strona);
if(nazwa_przestrzeni~="")then
nazwa_przestrzeni=p["WzórDanejPrzestrzeniNazw"](nazwa_przestrzeni);
end;
nazwa_strony=p["WzórNazwyStrony"](nazwa_strony);
return ((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..nazwa_strony;
end;
p["TekstBezOdwołańDoParametrówWeWzorze"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"%%(%d+)","%%%%%1");
return tekst;
end;
p["PrzekształćWzórDoCzystegoTekstu"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
return tekst;
end;
function p.PoliczZbiory(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame,true);
local liczba_istniejacych_zbiorow=0;
local tabela_uchwytow_stron={};
for _,nazwa_strony in ipairs(args) do
local uchwyt_strony = mw.title.makeTitle('',nazwa_strony);
local tekst_artykulu = uchwyt_strony and uchwyt_strony:getContent() or nil;
local czy_istnieje=tekst_artykulu and tekst_artykulu or (uchwyt_strony and uchwyt_strony.exists or nil);
tabela_uchwytow_stron[#tabela_uchwytow_stron+1]={uchwyt_strony,tekst_artykulu,};
if(czy_istnieje)then
liczba_istniejacych_zbiorow=liczba_istniejacych_zbiorow+1;
end;
end;
return liczba_istniejacych_zbiorow,tabela_uchwytow_stron;
end;
function p.TransformacjaWzoru(ciag)
return mw.ustring.gsub(ciag,"[%^%$%(%)%%%.%[%]%*%+%-%?]","%%%1");
end;
p["WyświetlajKodySpecjalne"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
text=mw.ustring.gsub(text,"&#(%d+);",i..hash.."%1"..sr);
text=mw.ustring.gsub(text,"&(%a+);",i.."%1"..sr);
return text;
end;
function p.Wikikod(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local nazwa_modulu=((parametry_modul["CzyTakCiąg"](przestrzen)) and (przestrzen..":") or "")..(nazwa or "Przykłowa strona");
local stronicowyparser_modul=require("Module:StronicowyParser/DalszeFunkcje");
local tekst=stronicowyparser_modul.LadujZawartoscStrony(nil,nazwa_modulu,nil,false,nil,true);
if(not tekst)then
local blad_modul=require("Module:Błąd");
return blad_modul.error{args={tag="span",tekst="Nie ma takiej strony lub artykulu."}};
end;
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
tekst=mw.ustring.gsub(tekst,"&#(%d+);",i..hash.."%1"..sr);
tekst=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..sr);
local tab_znaki={
["{{{"]="{{(((}}",
["{{"]="{{((}}",
["{"]="{{(}}",
["}}}"]="{{)))}}",
["}}"]="{{))}}",
["}"]="{{)}}",
["|"]="{{!}}",
["="]="{{=}}";
};
local tab_linki={
["[["]="{{!((}}",
["["]="{{)!}}",
["]]"]="{{))!}}",
["]"]="{{)!}}",
["|"]="{{!}}",
}
local tab_tagow={
["<"]="{{Mniejszy}}",
[">"]="{{Większy}}",
}
local tab_zmienne={
["NAMESPACE"]=true,
["PAGENAME"]=true,
};
local tablica_obiektow_strony_dany_modul={};
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne")
local tekst=stronicowyparser_potrzebne_modul.KodujStroneObiektowa(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul);
tekst=stronicowyparser_potrzebne_modul.SkladajSzablonoweWywolanie(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul,function(szablon,kod,obiekt)
if(obiekt=="TEMPLATE")then
if((mw.ustring.match(szablon,"^{{%s*#invoke:"))or(not mw.ustring.match(szablon,"^{{%s*#%a+:")))then
if(mw.ustring.match(szablon,"|"))then
mw.log(szablon,"TYTAN")
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
else
local pseudoszablon=mw.ustring.match(szablon,"^{{%s*(%a+)%s*:") or mw.ustring.match(szablon,"^{{%s*(%s+)%s*}}$")
if(pseudoszablon)then
if(tab_zmienne[pseudoszablon])then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
end;
else
szablon,_=mw.ustring.gsub(szablon,"(..?)",tab_znaki);
return szablon;
end;
elseif((obiekt=="LINKW")or(obiekt=="LINKZ"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif(obiekt=="VAR")then
szablon,_=mw.ustring.gsub(szablon,"(..?.?)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif((obiekt=="NOWIKI")or(obiekt=="PRE")or(obiekt=="MATH"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak] or tab_tagow[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
else
return szablon;
end;
end);
return frame:getParent():preprocess(tekst);
end;
p["WikikodStrony"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
return text;
end;
function p.LuaSubst(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local strona=args[1] or args["strona"];
if(not parametry_modul.CzyTak(strona))then return "(Bład: nazwa strony jest pusta lub nie podana)";end;
local title=mw.title.makeTitle('',strona);
if((not title)or (not title.exists))then return "(Bł≥ąd: Strona nie istnieje)";end;
local tekst=title:getContent();
local inkludowany=parametry_modul.CzyTak(args["inkludowana"]);
if(inkludowany)then
tekst,_=mw.ustring.gsub(tekst,"<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>(.-)</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>","");
tekst,_=mw.ustring.gsub(tekst,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.-)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
end;
return tekst;
end;
p["RozwiniętyWikikodStrony"]=function (frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame)
local PobierzParametr=parametry_modul.PobierzParametr(args);
local nazwa=PobierzParametr("Nazwa strony") or PobierzParametr("Nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("Miano przestrzeni nazw") or PobierzParametr("Przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
local bezkluczy={["Nazwa strony"]=true,["Nazwa"]=true,["Miano przestrzeni nazw"]=true,["Przestrzeń"]=true,};
if czy_wyspecjalizowana then
bezkluczy["wyspecjalizowana"]=true;
bezkluczy["nie rozwiń"]=true;
end;
local tab=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,bezkluczy);
local frame2=mw.getCurrentFrame():newChild{title=(parametry_modul.CzyTak(przestrzen)and (przestrzen..":"..nazwa) or nazwa),args=tab};
local czy2=(czy and frame.args);
text=(czy2 and (not parametry_modul.CzyTak(frame.args["nie rozwiń"])) or (not czy2 and true)) and frame2:preprocess(text) or text;
return text;
end;
function p.NowaLinia(frame)
return "\n";
end;
function p.Nowiki(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local PobierzParametr=parametry_modul.PobierzParametr(args);
local tekst=PobierzParametr("tekst") or PobierzParametr(1);
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local h=html_modul.KodHTMLZnaku("#");
local s=html_modul.KodHTMLZnaku(";");
tekst,_=mw.ustring.gsub(tekst,"&#(%d+);",i..h.."%1"..s);
tekst,_=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..s);
local sprawdz_modul=require("Module:Sprawdź");
tekst=sprawdz_modul["UsuńKategorięSprawdzaniaParametrówSzablonu"]{args={[1]=tekst,},}
tekst=frame:callParserFunction('#tag:nowiki',tekst);
return tekst;
end;
function p.FunkcjaLua(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local modul=require("Module:"..(args[1] or args["moduł"]));
if(modul)then
if(modul[asgs[2] or args["nazwa"] or args["funkcja"]])then
local args2=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,{[1]=true,["moduł"]=true,[2]=true,nazwa=true,funkcja=true,["wyspecjalizowana"]=true,})
return modul[asgs[2] or args["nazwa"] or args["funkcja"]](args2);
end;
end;
end;
p["LiczbaBajtówCiąguDoNormy"] = function(frame)
local str=frame.args[1] or frame.args["ciąg"];
local ile=tonumber(frame.args[2] or frame.args["norma"]);
if(not ile)then return #str;end;
if(#str<=ile)then
return #str;
end;
return nil;
end;
p["LiczbaStronJakoPozycjeDanejKategorii"]=function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local kategoria=parametry_modul.CzyTak(args["kategoria"]) and args["kategoria"] or "Category:Przykładowa kategoria";
local kat={
["subcats"]=true,
["files"]=true,
["pages"]=true,
}
local typ=args["typ"] or "all";
typ=kat[args["typ"]] and args["typ"] or "all";
local nazwy_modul=require("Module:Nazwy");
kategoria=nazwy_modul["NAZWASTRONY"](kategoria);
return mw.site.stats.pagesInCategory(kategoria,typ);
end;
return p;
oypwn1qhmmvuqecwtrmqszbs6uwjzas
439022
439021
2022-08-29T07:37:40Z
Persino
2851
Scribunto
text/plain
local p={};
p["ParsujWywołanieSzablonu"] = function(wywolanie_szablonu)
local wywolanie_bez_parametrow=mw.ustring.match(wywolanie_szablonu,"^{{[^{}|]-}}$");
if(not wywolanie_bez_parametrow)then
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*|.-}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
local parametry_wywolania_szablonu=mw.ustring.match(wywolanie_szablonu,"{{[^{}|]*|([^{}]*)}}");
return ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu);
else return nil;end;
else
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
return parametry_szablonu;
else return nil;end;
end;
end;
function ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu)
local kawalek_wywolania,dalszy_kawalek_wywolania=mw.ustring.match(parametry_wywolania_szablonu,"^([^|]*)|(.*)$");
if(not kawalek_wywolania)then
kawalek_wywolania=parametry_wywolania_szablonu;
end;
if(not dalszy_kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return parametry_szablonu;
end;
if(kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return ParametrySzablonu(dalszy_kawalek_wywolania,parametry_szablonu);
end;
return nil;
end;
function ZbierzParametrSzablonu(tworzona_tabela, kawalek_wywolania)
local kawalek_wywolania_element_nienazwany=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*$");
if(kawalek_wywolania_element_nienazwany)then
tworzona_tabela[#tworzona_tabela+1]=mw.text.trim(kawalek_wywolania_element_nienazwany);
return tworzona_tabela;
else
local kawalek_wywolania_klucz,kawalek_wywolania_wartosc=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*=%s*([^|{}]-)%s*$");
if((kawalek_wywolania_klucz)and(kawalek_wywolania_wartosc))then
if(not mw.ustring.match(kawalek_wywolania_klucz,"^%s*%d+%s*$"))then
tworzona_tabela[mw.text.trim(kawalek_wywolania_klucz)]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
else
tworzona_tabela[tonumber(mw.text.trim(kawalek_wywolania_klucz))]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
end;
else
return nil;
end;
end;
return nil;
end;
p["PokażSzablon"]=function(szablon, args)
local result = {}
local flags = {}
table.insert(result, mw.text.nowiki("{{"))
if mw.isSubsting() then
table.insert(result, "subst:")
end
table.insert(result, szablon);
if args then
for k, v in pairs(args) do
if (type(k)~="number")then
table.insert(result, "|")
table.insert(result, tostring(k))
table.insert(result, "=")
table.insert(result, mw.text.nowiki(v))
else
table.insert(result, "|")
table.insert(result, mw.text.nowiki(v))
end
end
end
table.insert(result, mw.text.nowiki("}}"))
return table.concat(result)
end;
function p.NazwaSzablonu(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa,_=PobierzParametr();
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa);
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np")
if(nazwa_przestrzeni==nazwy_np_modul.Template)then
return nazwy_modul["NAZWASTRONY"](nazwa);
elseif(nazwa_przestrzeni==nazwy_np_modul.Main)then
return ":"..nazwa;
else
return nazwa;
end;
end;
p["Pierwszy niepusty"]= function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local i=1;
local parametry_modul=require("Module:Parametry");
local liczba_elementow_w_tablicy_args=parametry_modul["LiczbaElementówNumerowanychZPrzedrostkiemLubNieTablicy"](args,"test");
local licznik=1;
while true do
local test=args["test"..i];
local _i=args[i];
local zmienna=test or _i;
local czy_tak=parametry_modul.CzyTak(zmienna);
if(czy_tak)then
return (_i)and _i or "{{{"..i.."}}}";
end;
if(licznik>=liczba_elementow_w_tablicy_args)then return "";end;
if(zmienna)then licznik=licznik+1;end;
i=i+1;
end;
return;
end;
p["PełnaNazwaOpisuModułu"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local pelna_nazwa_strony=PobierzParametr(1) or PobierzParametr("nazwa");
local komunikat = mw.message.new('Scribunto-doc-page-name', '$1');
local zawartosc_komunikatu;
if(komunikat:exists())then
zawartosc_komunikatu=komunikat:plain();
zawartosc_komunikatu=mw.getCurrentFrame():preprocess(zawartosc_komunikatu);
else
zawartosc_komunikatu="Module:%1/opis";
end;
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony0=nazwy_modul["PEŁNANAZWASTRONY"](zawartosc_komunikatu);
local pelna_nazwa_strony2=pelna_nazwa_strony and nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony) or nazwy_modul["PEŁNANAZWASTRONY"]();
local patternopis=mw.ustring.gsub(pelna_nazwa_strony0,"%$1",".-");
if(not mw.ustring.match(pelna_nazwa_strony2,"^"..patternopis.."$"))then
local nazwa_strony=nazwy_modul["NAZWASTRONY"](pelna_nazwa_strony2);
local przetworzona_nazwa_strony,_=mw.ustring.gsub(nazwa_strony,"(%%)","%%%%");
przetworzona_nazwa_strony,_=mw.ustring.gsub(przetworzona_nazwa_strony,"/%s*$","");
local pelna_nazwa_strony_opisu, _=mw.ustring.gsub(zawartosc_komunikatu,"%$1",przetworzona_nazwa_strony)
local pelna_strona_opisu=nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony_opisu);
return pelna_strona_opisu;
else
return pelna_nazwa_strony2;
end;
end;
p["WzórDanejPrzestrzeniNazw"] = function (frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor, _ = mw.ustring.gsub(nazwa,"(.)",function (s) return ((mw.ustring.match(s,"^%a$"))and("["..mw.ustring.upper(s)..mw.ustring.lower(s).."]")or s);end )
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["CzyIstniejeDanaPrzestrzeńNazw"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa_przestrzeni_nazw_lub_jego_identyfikator=PobierzParametr(1) or PobierzParametr("nazwa");
local uchwyt_przestrzeni_nazw;
if(mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*[%+%-]?%d+%s*$"))then
local identyfikator,_=mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*([%+%-]?%d+)%s*$");
uchwyt_przestrzeni_nazw=mw.site.namespaces[tonumber(mw.text.trim(identyfikator))];
else
uchwyt_przestrzeni_nazw=mw.site.namespaces[nazwa_przestrzeni_nazw_lub_jego_identyfikator];
end;
if(uchwyt_przestrzeni_nazw)then
return "tak";
else
return;
end;
end;
p["WzórNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor,_=mw.ustring.gsub(strona,"([%[%]%(%)%+%-%*%?%.%^%$%%'])","%%%1");
wzor,_=mw.ustring.gsub(wzor,"^(.)",function(s)return "["..mw.ustring.upper(s)..mw.ustring.lower(s).."]";end);
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["WzórPełnejNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_strony=nazwy_modul["NAZWASTRONY"](strona);
if(nazwa_przestrzeni~="")then
nazwa_przestrzeni=p["WzórDanejPrzestrzeniNazw"](nazwa_przestrzeni);
end;
nazwa_strony=p["WzórNazwyStrony"](nazwa_strony);
return ((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..nazwa_strony;
end;
p["TekstBezOdwołańDoParametrówWeWzorze"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"%%(%d+)","%%%%%1");
return tekst;
end;
p["PrzekształćWzórDoCzystegoTekstu"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
return tekst;
end;
function p.PoliczZbiory(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame,true);
local liczba_istniejacych_zbiorow=0;
local tabela_uchwytow_stron={};
for _,nazwa_strony in ipairs(args) do
local uchwyt_strony = mw.title.makeTitle('',nazwa_strony);
local tekst_artykulu = uchwyt_strony and uchwyt_strony:getContent() or nil;
local czy_istnieje=tekst_artykulu and tekst_artykulu or (uchwyt_strony and uchwyt_strony.exists or nil);
tabela_uchwytow_stron[#tabela_uchwytow_stron+1]={uchwyt_strony,tekst_artykulu,};
if(czy_istnieje)then
liczba_istniejacych_zbiorow=liczba_istniejacych_zbiorow+1;
end;
end;
return liczba_istniejacych_zbiorow,tabela_uchwytow_stron;
end;
function p.TransformacjaWzoru(ciag)
return mw.ustring.gsub(ciag,"[%^%$%(%)%%%.%[%]%*%+%-%?]","%%%1");
end;
p["WyświetlajKodySpecjalne"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
text=mw.ustring.gsub(text,"&#(%d+);",i..hash.."%1"..sr);
text=mw.ustring.gsub(text,"&(%a+);",i.."%1"..sr);
return text;
end;
function p.Wikikod(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local nazwa_modulu=((parametry_modul["CzyTakCiąg"](przestrzen)) and (przestrzen..":") or "")..(nazwa or "Przykłowa strona");
local stronicowyparser_modul=require("Module:StronicowyParser/DalszeFunkcje");
local tekst=stronicowyparser_modul.LadujZawartoscStrony(nil,nazwa_modulu,nil,false,nil,true);
if(not tekst)then
local blad_modul=require("Module:Błąd");
return blad_modul.error{args={tag="span",tekst="Nie ma takiej strony lub artykulu."}};
end;
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
tekst=mw.ustring.gsub(tekst,"&#(%d+);",i..hash.."%1"..sr);
tekst=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..sr);
local tab_znaki={
["{{{"]="{{(((}}",
["{{"]="{{((}}",
["{"]="{{(}}",
["}}}"]="{{)))}}",
["}}"]="{{))}}",
["}"]="{{)}}",
["|"]="{{!}}",
["="]="{{=}}";
};
local tab_linki={
["[["]="{{!((}}",
["["]="{{)!}}",
["]]"]="{{))!}}",
["]"]="{{)!}}",
["|"]="{{!}}",
}
local tab_tagow={
["<"]="{{Mniejszy}}",
[">"]="{{Większy}}",
}
local tab_zmienne={
["NAMESPACE"]=true,
["PAGENAME"]=true,
};
local tablica_obiektow_strony_dany_modul={};
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne")
local tekst=stronicowyparser_potrzebne_modul.KodujStroneObiektowa(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul);
tekst=stronicowyparser_potrzebne_modul.SkladajSzablonoweWywolanie(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul,function(szablon,kod,obiekt)
if(obiekt=="TEMPLATE")then
if((mw.ustring.match(szablon,"^{{%s*#invoke:"))or(not mw.ustring.match(szablon,"^{{%s*#%a+:")))then
if(mw.ustring.match(szablon,"|"))then
mw.log(szablon,"TYTAN")
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
else
local pseudoszablon=mw.ustring.match(szablon,"^{{%s*(%a+)%s*:") or mw.ustring.match(szablon,"^{{%s*(%s+)%s*}}$")
if(pseudoszablon)then
if(tab_zmienne[pseudoszablon])then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
end;
else
szablon,_=mw.ustring.gsub(szablon,"(..?)",tab_znaki);
return szablon;
end;
elseif((obiekt=="LINKW")or(obiekt=="LINKZ"))then
szablon,_=mw.ustring.gsub(szablon,"(..?)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif(obiekt=="VAR")then
szablon,_=mw.ustring.gsub(szablon,"(..?.?)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif((obiekt=="NOWIKI")or(obiekt=="PRE")or(obiekt=="MATH"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak] or tab_tagow[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
else
return szablon;
end;
end);
return frame:getParent():preprocess(tekst);
end;
p["WikikodStrony"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
return text;
end;
function p.LuaSubst(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local strona=args[1] or args["strona"];
if(not parametry_modul.CzyTak(strona))then return "(Bład: nazwa strony jest pusta lub nie podana)";end;
local title=mw.title.makeTitle('',strona);
if((not title)or (not title.exists))then return "(Bł≥ąd: Strona nie istnieje)";end;
local tekst=title:getContent();
local inkludowany=parametry_modul.CzyTak(args["inkludowana"]);
if(inkludowany)then
tekst,_=mw.ustring.gsub(tekst,"<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>(.-)</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>","");
tekst,_=mw.ustring.gsub(tekst,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.-)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
end;
return tekst;
end;
p["RozwiniętyWikikodStrony"]=function (frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame)
local PobierzParametr=parametry_modul.PobierzParametr(args);
local nazwa=PobierzParametr("Nazwa strony") or PobierzParametr("Nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("Miano przestrzeni nazw") or PobierzParametr("Przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
local bezkluczy={["Nazwa strony"]=true,["Nazwa"]=true,["Miano przestrzeni nazw"]=true,["Przestrzeń"]=true,};
if czy_wyspecjalizowana then
bezkluczy["wyspecjalizowana"]=true;
bezkluczy["nie rozwiń"]=true;
end;
local tab=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,bezkluczy);
local frame2=mw.getCurrentFrame():newChild{title=(parametry_modul.CzyTak(przestrzen)and (przestrzen..":"..nazwa) or nazwa),args=tab};
local czy2=(czy and frame.args);
text=(czy2 and (not parametry_modul.CzyTak(frame.args["nie rozwiń"])) or (not czy2 and true)) and frame2:preprocess(text) or text;
return text;
end;
function p.NowaLinia(frame)
return "\n";
end;
function p.Nowiki(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local PobierzParametr=parametry_modul.PobierzParametr(args);
local tekst=PobierzParametr("tekst") or PobierzParametr(1);
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local h=html_modul.KodHTMLZnaku("#");
local s=html_modul.KodHTMLZnaku(";");
tekst,_=mw.ustring.gsub(tekst,"&#(%d+);",i..h.."%1"..s);
tekst,_=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..s);
local sprawdz_modul=require("Module:Sprawdź");
tekst=sprawdz_modul["UsuńKategorięSprawdzaniaParametrówSzablonu"]{args={[1]=tekst,},}
tekst=frame:callParserFunction('#tag:nowiki',tekst);
return tekst;
end;
function p.FunkcjaLua(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local modul=require("Module:"..(args[1] or args["moduł"]));
if(modul)then
if(modul[asgs[2] or args["nazwa"] or args["funkcja"]])then
local args2=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,{[1]=true,["moduł"]=true,[2]=true,nazwa=true,funkcja=true,["wyspecjalizowana"]=true,})
return modul[asgs[2] or args["nazwa"] or args["funkcja"]](args2);
end;
end;
end;
p["LiczbaBajtówCiąguDoNormy"] = function(frame)
local str=frame.args[1] or frame.args["ciąg"];
local ile=tonumber(frame.args[2] or frame.args["norma"]);
if(not ile)then return #str;end;
if(#str<=ile)then
return #str;
end;
return nil;
end;
p["LiczbaStronJakoPozycjeDanejKategorii"]=function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local kategoria=parametry_modul.CzyTak(args["kategoria"]) and args["kategoria"] or "Category:Przykładowa kategoria";
local kat={
["subcats"]=true,
["files"]=true,
["pages"]=true,
}
local typ=args["typ"] or "all";
typ=kat[args["typ"]] and args["typ"] or "all";
local nazwy_modul=require("Module:Nazwy");
kategoria=nazwy_modul["NAZWASTRONY"](kategoria);
return mw.site.stats.pagesInCategory(kategoria,typ);
end;
return p;
gzouk9uzkkargb957o4gi80hzv8pq46
439023
439022
2022-08-29T07:39:02Z
Persino
2851
Scribunto
text/plain
local p={};
p["ParsujWywołanieSzablonu"] = function(wywolanie_szablonu)
local wywolanie_bez_parametrow=mw.ustring.match(wywolanie_szablonu,"^{{[^{}|]-}}$");
if(not wywolanie_bez_parametrow)then
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*|.-}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
local parametry_wywolania_szablonu=mw.ustring.match(wywolanie_szablonu,"{{[^{}|]*|([^{}]*)}}");
return ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu);
else return nil;end;
else
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
return parametry_szablonu;
else return nil;end;
end;
end;
function ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu)
local kawalek_wywolania,dalszy_kawalek_wywolania=mw.ustring.match(parametry_wywolania_szablonu,"^([^|]*)|(.*)$");
if(not kawalek_wywolania)then
kawalek_wywolania=parametry_wywolania_szablonu;
end;
if(not dalszy_kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return parametry_szablonu;
end;
if(kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return ParametrySzablonu(dalszy_kawalek_wywolania,parametry_szablonu);
end;
return nil;
end;
function ZbierzParametrSzablonu(tworzona_tabela, kawalek_wywolania)
local kawalek_wywolania_element_nienazwany=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*$");
if(kawalek_wywolania_element_nienazwany)then
tworzona_tabela[#tworzona_tabela+1]=mw.text.trim(kawalek_wywolania_element_nienazwany);
return tworzona_tabela;
else
local kawalek_wywolania_klucz,kawalek_wywolania_wartosc=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*=%s*([^|{}]-)%s*$");
if((kawalek_wywolania_klucz)and(kawalek_wywolania_wartosc))then
if(not mw.ustring.match(kawalek_wywolania_klucz,"^%s*%d+%s*$"))then
tworzona_tabela[mw.text.trim(kawalek_wywolania_klucz)]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
else
tworzona_tabela[tonumber(mw.text.trim(kawalek_wywolania_klucz))]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
end;
else
return nil;
end;
end;
return nil;
end;
p["PokażSzablon"]=function(szablon, args)
local result = {}
local flags = {}
table.insert(result, mw.text.nowiki("{{"))
if mw.isSubsting() then
table.insert(result, "subst:")
end
table.insert(result, szablon);
if args then
for k, v in pairs(args) do
if (type(k)~="number")then
table.insert(result, "|")
table.insert(result, tostring(k))
table.insert(result, "=")
table.insert(result, mw.text.nowiki(v))
else
table.insert(result, "|")
table.insert(result, mw.text.nowiki(v))
end
end
end
table.insert(result, mw.text.nowiki("}}"))
return table.concat(result)
end;
function p.NazwaSzablonu(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa,_=PobierzParametr();
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa);
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np")
if(nazwa_przestrzeni==nazwy_np_modul.Template)then
return nazwy_modul["NAZWASTRONY"](nazwa);
elseif(nazwa_przestrzeni==nazwy_np_modul.Main)then
return ":"..nazwa;
else
return nazwa;
end;
end;
p["Pierwszy niepusty"]= function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local i=1;
local parametry_modul=require("Module:Parametry");
local liczba_elementow_w_tablicy_args=parametry_modul["LiczbaElementówNumerowanychZPrzedrostkiemLubNieTablicy"](args,"test");
local licznik=1;
while true do
local test=args["test"..i];
local _i=args[i];
local zmienna=test or _i;
local czy_tak=parametry_modul.CzyTak(zmienna);
if(czy_tak)then
return (_i)and _i or "{{{"..i.."}}}";
end;
if(licznik>=liczba_elementow_w_tablicy_args)then return "";end;
if(zmienna)then licznik=licznik+1;end;
i=i+1;
end;
return;
end;
p["PełnaNazwaOpisuModułu"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local pelna_nazwa_strony=PobierzParametr(1) or PobierzParametr("nazwa");
local komunikat = mw.message.new('Scribunto-doc-page-name', '$1');
local zawartosc_komunikatu;
if(komunikat:exists())then
zawartosc_komunikatu=komunikat:plain();
zawartosc_komunikatu=mw.getCurrentFrame():preprocess(zawartosc_komunikatu);
else
zawartosc_komunikatu="Module:%1/opis";
end;
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony0=nazwy_modul["PEŁNANAZWASTRONY"](zawartosc_komunikatu);
local pelna_nazwa_strony2=pelna_nazwa_strony and nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony) or nazwy_modul["PEŁNANAZWASTRONY"]();
local patternopis=mw.ustring.gsub(pelna_nazwa_strony0,"%$1",".-");
if(not mw.ustring.match(pelna_nazwa_strony2,"^"..patternopis.."$"))then
local nazwa_strony=nazwy_modul["NAZWASTRONY"](pelna_nazwa_strony2);
local przetworzona_nazwa_strony,_=mw.ustring.gsub(nazwa_strony,"(%%)","%%%%");
przetworzona_nazwa_strony,_=mw.ustring.gsub(przetworzona_nazwa_strony,"/%s*$","");
local pelna_nazwa_strony_opisu, _=mw.ustring.gsub(zawartosc_komunikatu,"%$1",przetworzona_nazwa_strony)
local pelna_strona_opisu=nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony_opisu);
return pelna_strona_opisu;
else
return pelna_nazwa_strony2;
end;
end;
p["WzórDanejPrzestrzeniNazw"] = function (frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor, _ = mw.ustring.gsub(nazwa,"(.)",function (s) return ((mw.ustring.match(s,"^%a$"))and("["..mw.ustring.upper(s)..mw.ustring.lower(s).."]")or s);end )
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["CzyIstniejeDanaPrzestrzeńNazw"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa_przestrzeni_nazw_lub_jego_identyfikator=PobierzParametr(1) or PobierzParametr("nazwa");
local uchwyt_przestrzeni_nazw;
if(mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*[%+%-]?%d+%s*$"))then
local identyfikator,_=mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*([%+%-]?%d+)%s*$");
uchwyt_przestrzeni_nazw=mw.site.namespaces[tonumber(mw.text.trim(identyfikator))];
else
uchwyt_przestrzeni_nazw=mw.site.namespaces[nazwa_przestrzeni_nazw_lub_jego_identyfikator];
end;
if(uchwyt_przestrzeni_nazw)then
return "tak";
else
return;
end;
end;
p["WzórNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor,_=mw.ustring.gsub(strona,"([%[%]%(%)%+%-%*%?%.%^%$%%'])","%%%1");
wzor,_=mw.ustring.gsub(wzor,"^(.)",function(s)return "["..mw.ustring.upper(s)..mw.ustring.lower(s).."]";end);
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["WzórPełnejNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_strony=nazwy_modul["NAZWASTRONY"](strona);
if(nazwa_przestrzeni~="")then
nazwa_przestrzeni=p["WzórDanejPrzestrzeniNazw"](nazwa_przestrzeni);
end;
nazwa_strony=p["WzórNazwyStrony"](nazwa_strony);
return ((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..nazwa_strony;
end;
p["TekstBezOdwołańDoParametrówWeWzorze"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"%%(%d+)","%%%%%1");
return tekst;
end;
p["PrzekształćWzórDoCzystegoTekstu"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
return tekst;
end;
function p.PoliczZbiory(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame,true);
local liczba_istniejacych_zbiorow=0;
local tabela_uchwytow_stron={};
for _,nazwa_strony in ipairs(args) do
local uchwyt_strony = mw.title.makeTitle('',nazwa_strony);
local tekst_artykulu = uchwyt_strony and uchwyt_strony:getContent() or nil;
local czy_istnieje=tekst_artykulu and tekst_artykulu or (uchwyt_strony and uchwyt_strony.exists or nil);
tabela_uchwytow_stron[#tabela_uchwytow_stron+1]={uchwyt_strony,tekst_artykulu,};
if(czy_istnieje)then
liczba_istniejacych_zbiorow=liczba_istniejacych_zbiorow+1;
end;
end;
return liczba_istniejacych_zbiorow,tabela_uchwytow_stron;
end;
function p.TransformacjaWzoru(ciag)
return mw.ustring.gsub(ciag,"[%^%$%(%)%%%.%[%]%*%+%-%?]","%%%1");
end;
p["WyświetlajKodySpecjalne"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
text=mw.ustring.gsub(text,"&#(%d+);",i..hash.."%1"..sr);
text=mw.ustring.gsub(text,"&(%a+);",i.."%1"..sr);
return text;
end;
function p.Wikikod(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local nazwa_modulu=((parametry_modul["CzyTakCiąg"](przestrzen)) and (przestrzen..":") or "")..(nazwa or "Przykłowa strona");
local stronicowyparser_modul=require("Module:StronicowyParser/DalszeFunkcje");
local tekst=stronicowyparser_modul.LadujZawartoscStrony(nil,nazwa_modulu,nil,false,nil,true);
if(not tekst)then
local blad_modul=require("Module:Błąd");
return blad_modul.error{args={tag="span",tekst="Nie ma takiej strony lub artykulu."}};
end;
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
tekst=mw.ustring.gsub(tekst,"&#(%d+);",i..hash.."%1"..sr);
tekst=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..sr);
local tab_znaki={
["{{{"]="{{(((}}",
["{{"]="{{((}}",
["{"]="{{(}}",
["}}}"]="{{)))}}",
["}}"]="{{))}}",
["}"]="{{)}}",
["|"]="{{!}}",
["="]="{{=}}";
};
local tab_linki={
["[["]="{{!((}}",
["["]="{{)!}}",
["]]"]="{{))!}}",
["]"]="{{)!}}",
["|"]="{{!}}",
}
local tab_tagow={
["<"]="{{Mniejszy}}",
[">"]="{{Większy}}",
}
local tab_zmienne={
["NAMESPACE"]=true,
["PAGENAME"]=true,
};
local tablica_obiektow_strony_dany_modul={};
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne")
local tekst=stronicowyparser_potrzebne_modul.KodujStroneObiektowa(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul);
tekst=stronicowyparser_potrzebne_modul.SkladajSzablonoweWywolanie(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul,function(szablon,kod,obiekt)
if(obiekt=="TEMPLATE")then
if((mw.ustring.match(szablon,"^{{%s*#invoke:"))or(not mw.ustring.match(szablon,"^{{%s*#%a+:")))then
if(mw.ustring.match(szablon,"|"))then
mw.log(szablon,"TYTAN")
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
else
local pseudoszablon=mw.ustring.match(szablon,"^{{%s*(%a+)%s*:") or mw.ustring.match(szablon,"^{{%s*(%s+)%s*}}$")
if(pseudoszablon)then
if(tab_zmienne[pseudoszablon])then
szablon,_=mw.ustring.gsub(szablon,"(..?)",tab_znaki);
return;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
end;
else
szablon,_=mw.ustring.gsub(szablon,"(..?)",tab_znaki);
return szablon;
end;
elseif((obiekt=="LINKW")or(obiekt=="LINKZ"))then
szablon,_=mw.ustring.gsub(szablon,"(..?)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif(obiekt=="VAR")then
szablon,_=mw.ustring.gsub(szablon,"(..?.?)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif((obiekt=="NOWIKI")or(obiekt=="PRE")or(obiekt=="MATH"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak] or tab_tagow[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
else
return szablon;
end;
end);
return frame:getParent():preprocess(tekst);
end;
p["WikikodStrony"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
return text;
end;
function p.LuaSubst(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local strona=args[1] or args["strona"];
if(not parametry_modul.CzyTak(strona))then return "(Bład: nazwa strony jest pusta lub nie podana)";end;
local title=mw.title.makeTitle('',strona);
if((not title)or (not title.exists))then return "(Bł≥ąd: Strona nie istnieje)";end;
local tekst=title:getContent();
local inkludowany=parametry_modul.CzyTak(args["inkludowana"]);
if(inkludowany)then
tekst,_=mw.ustring.gsub(tekst,"<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>(.-)</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>","");
tekst,_=mw.ustring.gsub(tekst,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.-)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
end;
return tekst;
end;
p["RozwiniętyWikikodStrony"]=function (frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame)
local PobierzParametr=parametry_modul.PobierzParametr(args);
local nazwa=PobierzParametr("Nazwa strony") or PobierzParametr("Nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("Miano przestrzeni nazw") or PobierzParametr("Przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
local bezkluczy={["Nazwa strony"]=true,["Nazwa"]=true,["Miano przestrzeni nazw"]=true,["Przestrzeń"]=true,};
if czy_wyspecjalizowana then
bezkluczy["wyspecjalizowana"]=true;
bezkluczy["nie rozwiń"]=true;
end;
local tab=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,bezkluczy);
local frame2=mw.getCurrentFrame():newChild{title=(parametry_modul.CzyTak(przestrzen)and (przestrzen..":"..nazwa) or nazwa),args=tab};
local czy2=(czy and frame.args);
text=(czy2 and (not parametry_modul.CzyTak(frame.args["nie rozwiń"])) or (not czy2 and true)) and frame2:preprocess(text) or text;
return text;
end;
function p.NowaLinia(frame)
return "\n";
end;
function p.Nowiki(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local PobierzParametr=parametry_modul.PobierzParametr(args);
local tekst=PobierzParametr("tekst") or PobierzParametr(1);
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local h=html_modul.KodHTMLZnaku("#");
local s=html_modul.KodHTMLZnaku(";");
tekst,_=mw.ustring.gsub(tekst,"&#(%d+);",i..h.."%1"..s);
tekst,_=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..s);
local sprawdz_modul=require("Module:Sprawdź");
tekst=sprawdz_modul["UsuńKategorięSprawdzaniaParametrówSzablonu"]{args={[1]=tekst,},}
tekst=frame:callParserFunction('#tag:nowiki',tekst);
return tekst;
end;
function p.FunkcjaLua(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local modul=require("Module:"..(args[1] or args["moduł"]));
if(modul)then
if(modul[asgs[2] or args["nazwa"] or args["funkcja"]])then
local args2=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,{[1]=true,["moduł"]=true,[2]=true,nazwa=true,funkcja=true,["wyspecjalizowana"]=true,})
return modul[asgs[2] or args["nazwa"] or args["funkcja"]](args2);
end;
end;
end;
p["LiczbaBajtówCiąguDoNormy"] = function(frame)
local str=frame.args[1] or frame.args["ciąg"];
local ile=tonumber(frame.args[2] or frame.args["norma"]);
if(not ile)then return #str;end;
if(#str<=ile)then
return #str;
end;
return nil;
end;
p["LiczbaStronJakoPozycjeDanejKategorii"]=function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local kategoria=parametry_modul.CzyTak(args["kategoria"]) and args["kategoria"] or "Category:Przykładowa kategoria";
local kat={
["subcats"]=true,
["files"]=true,
["pages"]=true,
}
local typ=args["typ"] or "all";
typ=kat[args["typ"]] and args["typ"] or "all";
local nazwy_modul=require("Module:Nazwy");
kategoria=nazwy_modul["NAZWASTRONY"](kategoria);
return mw.site.stats.pagesInCategory(kategoria,typ);
end;
return p;
cz8du66gnufl056o0zswvshs1632kip
439024
439023
2022-08-29T08:08:46Z
Persino
2851
Scribunto
text/plain
local p={};
p["ParsujWywołanieSzablonu"] = function(wywolanie_szablonu)
local wywolanie_bez_parametrow=mw.ustring.match(wywolanie_szablonu,"^{{[^{}|]-}}$");
if(not wywolanie_bez_parametrow)then
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*|.-}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
local parametry_wywolania_szablonu=mw.ustring.match(wywolanie_szablonu,"{{[^{}|]*|([^{}]*)}}");
return ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu);
else return nil;end;
else
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
return parametry_szablonu;
else return nil;end;
end;
end;
function ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu)
local kawalek_wywolania,dalszy_kawalek_wywolania=mw.ustring.match(parametry_wywolania_szablonu,"^([^|]*)|(.*)$");
if(not kawalek_wywolania)then
kawalek_wywolania=parametry_wywolania_szablonu;
end;
if(not dalszy_kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return parametry_szablonu;
end;
if(kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return ParametrySzablonu(dalszy_kawalek_wywolania,parametry_szablonu);
end;
return nil;
end;
function ZbierzParametrSzablonu(tworzona_tabela, kawalek_wywolania)
local kawalek_wywolania_element_nienazwany=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*$");
if(kawalek_wywolania_element_nienazwany)then
tworzona_tabela[#tworzona_tabela+1]=mw.text.trim(kawalek_wywolania_element_nienazwany);
return tworzona_tabela;
else
local kawalek_wywolania_klucz,kawalek_wywolania_wartosc=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*=%s*([^|{}]-)%s*$");
if((kawalek_wywolania_klucz)and(kawalek_wywolania_wartosc))then
if(not mw.ustring.match(kawalek_wywolania_klucz,"^%s*%d+%s*$"))then
tworzona_tabela[mw.text.trim(kawalek_wywolania_klucz)]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
else
tworzona_tabela[tonumber(mw.text.trim(kawalek_wywolania_klucz))]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
end;
else
return nil;
end;
end;
return nil;
end;
p["PokażSzablon"]=function(szablon, args)
local result = {}
local flags = {}
table.insert(result, mw.text.nowiki("{{"))
if mw.isSubsting() then
table.insert(result, "subst:")
end
table.insert(result, szablon);
if args then
for k, v in pairs(args) do
if (type(k)~="number")then
table.insert(result, "|")
table.insert(result, tostring(k))
table.insert(result, "=")
table.insert(result, mw.text.nowiki(v))
else
table.insert(result, "|")
table.insert(result, mw.text.nowiki(v))
end
end
end
table.insert(result, mw.text.nowiki("}}"))
return table.concat(result)
end;
function p.NazwaSzablonu(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa,_=PobierzParametr();
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa);
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np")
if(nazwa_przestrzeni==nazwy_np_modul.Template)then
return nazwy_modul["NAZWASTRONY"](nazwa);
elseif(nazwa_przestrzeni==nazwy_np_modul.Main)then
return ":"..nazwa;
else
return nazwa;
end;
end;
p["Pierwszy niepusty"]= function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local i=1;
local parametry_modul=require("Module:Parametry");
local liczba_elementow_w_tablicy_args=parametry_modul["LiczbaElementówNumerowanychZPrzedrostkiemLubNieTablicy"](args,"test");
local licznik=1;
while true do
local test=args["test"..i];
local _i=args[i];
local zmienna=test or _i;
local czy_tak=parametry_modul.CzyTak(zmienna);
if(czy_tak)then
return (_i)and _i or "{{{"..i.."}}}";
end;
if(licznik>=liczba_elementow_w_tablicy_args)then return "";end;
if(zmienna)then licznik=licznik+1;end;
i=i+1;
end;
return;
end;
p["PełnaNazwaOpisuModułu"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local pelna_nazwa_strony=PobierzParametr(1) or PobierzParametr("nazwa");
local komunikat = mw.message.new('Scribunto-doc-page-name', '$1');
local zawartosc_komunikatu;
if(komunikat:exists())then
zawartosc_komunikatu=komunikat:plain();
zawartosc_komunikatu=mw.getCurrentFrame():preprocess(zawartosc_komunikatu);
else
zawartosc_komunikatu="Module:%1/opis";
end;
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony0=nazwy_modul["PEŁNANAZWASTRONY"](zawartosc_komunikatu);
local pelna_nazwa_strony2=pelna_nazwa_strony and nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony) or nazwy_modul["PEŁNANAZWASTRONY"]();
local patternopis=mw.ustring.gsub(pelna_nazwa_strony0,"%$1",".-");
if(not mw.ustring.match(pelna_nazwa_strony2,"^"..patternopis.."$"))then
local nazwa_strony=nazwy_modul["NAZWASTRONY"](pelna_nazwa_strony2);
local przetworzona_nazwa_strony,_=mw.ustring.gsub(nazwa_strony,"(%%)","%%%%");
przetworzona_nazwa_strony,_=mw.ustring.gsub(przetworzona_nazwa_strony,"/%s*$","");
local pelna_nazwa_strony_opisu, _=mw.ustring.gsub(zawartosc_komunikatu,"%$1",przetworzona_nazwa_strony)
local pelna_strona_opisu=nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony_opisu);
return pelna_strona_opisu;
else
return pelna_nazwa_strony2;
end;
end;
p["WzórDanejPrzestrzeniNazw"] = function (frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor, _ = mw.ustring.gsub(nazwa,"(.)",function (s) return ((mw.ustring.match(s,"^%a$"))and("["..mw.ustring.upper(s)..mw.ustring.lower(s).."]")or s);end )
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["CzyIstniejeDanaPrzestrzeńNazw"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa_przestrzeni_nazw_lub_jego_identyfikator=PobierzParametr(1) or PobierzParametr("nazwa");
local uchwyt_przestrzeni_nazw;
if(mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*[%+%-]?%d+%s*$"))then
local identyfikator,_=mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*([%+%-]?%d+)%s*$");
uchwyt_przestrzeni_nazw=mw.site.namespaces[tonumber(mw.text.trim(identyfikator))];
else
uchwyt_przestrzeni_nazw=mw.site.namespaces[nazwa_przestrzeni_nazw_lub_jego_identyfikator];
end;
if(uchwyt_przestrzeni_nazw)then
return "tak";
else
return;
end;
end;
p["WzórNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor,_=mw.ustring.gsub(strona,"([%[%]%(%)%+%-%*%?%.%^%$%%'])","%%%1");
wzor,_=mw.ustring.gsub(wzor,"^(.)",function(s)return "["..mw.ustring.upper(s)..mw.ustring.lower(s).."]";end);
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["WzórPełnejNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_strony=nazwy_modul["NAZWASTRONY"](strona);
if(nazwa_przestrzeni~="")then
nazwa_przestrzeni=p["WzórDanejPrzestrzeniNazw"](nazwa_przestrzeni);
end;
nazwa_strony=p["WzórNazwyStrony"](nazwa_strony);
return ((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..nazwa_strony;
end;
p["TekstBezOdwołańDoParametrówWeWzorze"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"%%(%d+)","%%%%%1");
return tekst;
end;
p["PrzekształćWzórDoCzystegoTekstu"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
return tekst;
end;
function p.PoliczZbiory(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame,true);
local liczba_istniejacych_zbiorow=0;
local tabela_uchwytow_stron={};
for _,nazwa_strony in ipairs(args) do
local uchwyt_strony = mw.title.makeTitle('',nazwa_strony);
local tekst_artykulu = uchwyt_strony and uchwyt_strony:getContent() or nil;
local czy_istnieje=tekst_artykulu and tekst_artykulu or (uchwyt_strony and uchwyt_strony.exists or nil);
tabela_uchwytow_stron[#tabela_uchwytow_stron+1]={uchwyt_strony,tekst_artykulu,};
if(czy_istnieje)then
liczba_istniejacych_zbiorow=liczba_istniejacych_zbiorow+1;
end;
end;
return liczba_istniejacych_zbiorow,tabela_uchwytow_stron;
end;
function p.TransformacjaWzoru(ciag)
return mw.ustring.gsub(ciag,"[%^%$%(%)%%%.%[%]%*%+%-%?]","%%%1");
end;
p["WyświetlajKodySpecjalne"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
text=mw.ustring.gsub(text,"&#(%d+);",i..hash.."%1"..sr);
text=mw.ustring.gsub(text,"&(%a+);",i.."%1"..sr);
return text;
end;
function p.Wikikod(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local nazwa_modulu=((parametry_modul["CzyTakCiąg"](przestrzen)) and (przestrzen..":") or "")..(nazwa or "Przykłowa strona");
local stronicowyparser_modul=require("Module:StronicowyParser/DalszeFunkcje");
local tekst=stronicowyparser_modul.LadujZawartoscStrony(nil,nazwa_modulu,nil,false,nil,true);
if(not tekst)then
local blad_modul=require("Module:Błąd");
return blad_modul.error{args={tag="span",tekst="Nie ma takiej strony lub artykulu."}};
end;
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
tekst=mw.ustring.gsub(tekst,"&#(%d+);",i..hash.."%1"..sr);
tekst=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..sr);
local tab_znaki={
["{"]="{{(}}",
["}"]="{{)}}",
["|"]="{{!}}",
["="]="{{=}}";
};
local tab_linki={
["["]="{{!(}}",
["]"]="{{)!}}",
["|"]="{{!}}",
}
local tab_tagow={
["<"]="{{Mniejszy}}",
[">"]="{{Większy}}",
}
local tab_zmienne={
["NAMESPACE"]=true,
["PAGENAME"]=true,
};
local tablica_obiektow_strony_dany_modul={};
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne")
local tekst=stronicowyparser_potrzebne_modul.KodujStroneObiektowa(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul);
tekst=stronicowyparser_potrzebne_modul.SkladajSzablonoweWywolanie(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul,function(szablon,kod,obiekt)
if(obiekt=="TEMPLATE")then
if((mw.ustring.match(szablon,"^{{%s*#invoke:"))or(not mw.ustring.match(szablon,"^{{%s*#%a+:")))then
if(mw.ustring.match(szablon,"|"))then
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
else
local pseudoszablon=mw.ustring.match(szablon,"^{{%s*(%a+)%s*:") or mw.ustring.match(szablon,"^{{%s*(%a+)%s*}}$")
if(pseudoszablon)then
if(tab_zmienne[pseudoszablon])then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
end;
else
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
end;
elseif((obiekt=="LINKW")or(obiekt=="LINKZ"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif(obiekt=="VAR")then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif((obiekt=="NOWIKI")or(obiekt=="PRE")or(obiekt=="MATH"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak] or tab_tagow[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
else
return szablon;
end;
end);
return frame:getParent():preprocess(tekst);
end;
p["WikikodStrony"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
return text;
end;
function p.LuaSubst(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local strona=args[1] or args["strona"];
if(not parametry_modul.CzyTak(strona))then return "(Bład: nazwa strony jest pusta lub nie podana)";end;
local title=mw.title.makeTitle('',strona);
if((not title)or (not title.exists))then return "(Bł≥ąd: Strona nie istnieje)";end;
local tekst=title:getContent();
local inkludowany=parametry_modul.CzyTak(args["inkludowana"]);
if(inkludowany)then
tekst,_=mw.ustring.gsub(tekst,"<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>(.-)</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>","");
tekst,_=mw.ustring.gsub(tekst,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.-)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
end;
return tekst;
end;
p["RozwiniętyWikikodStrony"]=function (frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame)
local PobierzParametr=parametry_modul.PobierzParametr(args);
local nazwa=PobierzParametr("Nazwa strony") or PobierzParametr("Nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("Miano przestrzeni nazw") or PobierzParametr("Przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
local bezkluczy={["Nazwa strony"]=true,["Nazwa"]=true,["Miano przestrzeni nazw"]=true,["Przestrzeń"]=true,};
if czy_wyspecjalizowana then
bezkluczy["wyspecjalizowana"]=true;
bezkluczy["nie rozwiń"]=true;
end;
local tab=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,bezkluczy);
local frame2=mw.getCurrentFrame():newChild{title=(parametry_modul.CzyTak(przestrzen)and (przestrzen..":"..nazwa) or nazwa),args=tab};
local czy2=(czy and frame.args);
text=(czy2 and (not parametry_modul.CzyTak(frame.args["nie rozwiń"])) or (not czy2 and true)) and frame2:preprocess(text) or text;
return text;
end;
function p.NowaLinia(frame)
return "\n";
end;
function p.Nowiki(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local PobierzParametr=parametry_modul.PobierzParametr(args);
local tekst=PobierzParametr("tekst") or PobierzParametr(1);
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local h=html_modul.KodHTMLZnaku("#");
local s=html_modul.KodHTMLZnaku(";");
tekst,_=mw.ustring.gsub(tekst,"&#(%d+);",i..h.."%1"..s);
tekst,_=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..s);
local sprawdz_modul=require("Module:Sprawdź");
tekst=sprawdz_modul["UsuńKategorięSprawdzaniaParametrówSzablonu"]{args={[1]=tekst,},}
tekst=frame:callParserFunction('#tag:nowiki',tekst);
return tekst;
end;
function p.FunkcjaLua(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local modul=require("Module:"..(args[1] or args["moduł"]));
if(modul)then
if(modul[asgs[2] or args["nazwa"] or args["funkcja"]])then
local args2=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,{[1]=true,["moduł"]=true,[2]=true,nazwa=true,funkcja=true,["wyspecjalizowana"]=true,})
return modul[asgs[2] or args["nazwa"] or args["funkcja"]](args2);
end;
end;
end;
p["LiczbaBajtówCiąguDoNormy"] = function(frame)
local str=frame.args[1] or frame.args["ciąg"];
local ile=tonumber(frame.args[2] or frame.args["norma"]);
if(not ile)then return #str;end;
if(#str<=ile)then
return #str;
end;
return nil;
end;
p["LiczbaStronJakoPozycjeDanejKategorii"]=function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local kategoria=parametry_modul.CzyTak(args["kategoria"]) and args["kategoria"] or "Category:Przykładowa kategoria";
local kat={
["subcats"]=true,
["files"]=true,
["pages"]=true,
}
local typ=args["typ"] or "all";
typ=kat[args["typ"]] and args["typ"] or "all";
local nazwy_modul=require("Module:Nazwy");
kategoria=nazwy_modul["NAZWASTRONY"](kategoria);
return mw.site.stats.pagesInCategory(kategoria,typ);
end;
return p;
1t68mfxedl8ld7drf9fzejmkg2n1uoy
439025
439024
2022-08-29T08:22:26Z
Persino
2851
Scribunto
text/plain
local p={};
p["ParsujWywołanieSzablonu"] = function(wywolanie_szablonu)
local wywolanie_bez_parametrow=mw.ustring.match(wywolanie_szablonu,"^{{[^{}|]-}}$");
if(not wywolanie_bez_parametrow)then
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*|.-}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
local parametry_wywolania_szablonu=mw.ustring.match(wywolanie_szablonu,"{{[^{}|]*|([^{}]*)}}");
return ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu);
else return nil;end;
else
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
return parametry_szablonu;
else return nil;end;
end;
end;
function ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu)
local kawalek_wywolania,dalszy_kawalek_wywolania=mw.ustring.match(parametry_wywolania_szablonu,"^([^|]*)|(.*)$");
if(not kawalek_wywolania)then
kawalek_wywolania=parametry_wywolania_szablonu;
end;
if(not dalszy_kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return parametry_szablonu;
end;
if(kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return ParametrySzablonu(dalszy_kawalek_wywolania,parametry_szablonu);
end;
return nil;
end;
function ZbierzParametrSzablonu(tworzona_tabela, kawalek_wywolania)
local kawalek_wywolania_element_nienazwany=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*$");
if(kawalek_wywolania_element_nienazwany)then
tworzona_tabela[#tworzona_tabela+1]=mw.text.trim(kawalek_wywolania_element_nienazwany);
return tworzona_tabela;
else
local kawalek_wywolania_klucz,kawalek_wywolania_wartosc=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*=%s*([^|{}]-)%s*$");
if((kawalek_wywolania_klucz)and(kawalek_wywolania_wartosc))then
if(not mw.ustring.match(kawalek_wywolania_klucz,"^%s*%d+%s*$"))then
tworzona_tabela[mw.text.trim(kawalek_wywolania_klucz)]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
else
tworzona_tabela[tonumber(mw.text.trim(kawalek_wywolania_klucz))]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
end;
else
return nil;
end;
end;
return nil;
end;
p["PokażSzablon"]=function(szablon, args)
local result = {}
local flags = {}
table.insert(result, mw.text.nowiki("{{"))
if mw.isSubsting() then
table.insert(result, "subst:")
end
table.insert(result, szablon);
if args then
for k, v in pairs(args) do
if (type(k)~="number")then
table.insert(result, "|")
table.insert(result, tostring(k))
table.insert(result, "=")
table.insert(result, mw.text.nowiki(v))
else
table.insert(result, "|")
table.insert(result, mw.text.nowiki(v))
end
end
end
table.insert(result, mw.text.nowiki("}}"))
return table.concat(result)
end;
function p.NazwaSzablonu(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa,_=PobierzParametr();
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa);
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np")
if(nazwa_przestrzeni==nazwy_np_modul.Template)then
return nazwy_modul["NAZWASTRONY"](nazwa);
elseif(nazwa_przestrzeni==nazwy_np_modul.Main)then
return ":"..nazwa;
else
return nazwa;
end;
end;
p["Pierwszy niepusty"]= function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local i=1;
local parametry_modul=require("Module:Parametry");
local liczba_elementow_w_tablicy_args=parametry_modul["LiczbaElementówNumerowanychZPrzedrostkiemLubNieTablicy"](args,"test");
local licznik=1;
while true do
local test=args["test"..i];
local _i=args[i];
local zmienna=test or _i;
local czy_tak=parametry_modul.CzyTak(zmienna);
if(czy_tak)then
return (_i)and _i or "{{{"..i.."}}}";
end;
if(licznik>=liczba_elementow_w_tablicy_args)then return "";end;
if(zmienna)then licznik=licznik+1;end;
i=i+1;
end;
return;
end;
p["PełnaNazwaOpisuModułu"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local pelna_nazwa_strony=PobierzParametr(1) or PobierzParametr("nazwa");
local komunikat = mw.message.new('Scribunto-doc-page-name', '$1');
local zawartosc_komunikatu;
if(komunikat:exists())then
zawartosc_komunikatu=komunikat:plain();
zawartosc_komunikatu=mw.getCurrentFrame():preprocess(zawartosc_komunikatu);
else
zawartosc_komunikatu="Module:%1/opis";
end;
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony0=nazwy_modul["PEŁNANAZWASTRONY"](zawartosc_komunikatu);
local pelna_nazwa_strony2=pelna_nazwa_strony and nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony) or nazwy_modul["PEŁNANAZWASTRONY"]();
local patternopis=mw.ustring.gsub(pelna_nazwa_strony0,"%$1",".-");
if(not mw.ustring.match(pelna_nazwa_strony2,"^"..patternopis.."$"))then
local nazwa_strony=nazwy_modul["NAZWASTRONY"](pelna_nazwa_strony2);
local przetworzona_nazwa_strony,_=mw.ustring.gsub(nazwa_strony,"(%%)","%%%%");
przetworzona_nazwa_strony,_=mw.ustring.gsub(przetworzona_nazwa_strony,"/%s*$","");
local pelna_nazwa_strony_opisu, _=mw.ustring.gsub(zawartosc_komunikatu,"%$1",przetworzona_nazwa_strony)
local pelna_strona_opisu=nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony_opisu);
return pelna_strona_opisu;
else
return pelna_nazwa_strony2;
end;
end;
p["WzórDanejPrzestrzeniNazw"] = function (frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor, _ = mw.ustring.gsub(nazwa,"(.)",function (s) return ((mw.ustring.match(s,"^%a$"))and("["..mw.ustring.upper(s)..mw.ustring.lower(s).."]")or s);end )
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["CzyIstniejeDanaPrzestrzeńNazw"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa_przestrzeni_nazw_lub_jego_identyfikator=PobierzParametr(1) or PobierzParametr("nazwa");
local uchwyt_przestrzeni_nazw;
if(mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*[%+%-]?%d+%s*$"))then
local identyfikator,_=mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*([%+%-]?%d+)%s*$");
uchwyt_przestrzeni_nazw=mw.site.namespaces[tonumber(mw.text.trim(identyfikator))];
else
uchwyt_przestrzeni_nazw=mw.site.namespaces[nazwa_przestrzeni_nazw_lub_jego_identyfikator];
end;
if(uchwyt_przestrzeni_nazw)then
return "tak";
else
return;
end;
end;
p["WzórNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor,_=mw.ustring.gsub(strona,"([%[%]%(%)%+%-%*%?%.%^%$%%'])","%%%1");
wzor,_=mw.ustring.gsub(wzor,"^(.)",function(s)return "["..mw.ustring.upper(s)..mw.ustring.lower(s).."]";end);
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["WzórPełnejNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_strony=nazwy_modul["NAZWASTRONY"](strona);
if(nazwa_przestrzeni~="")then
nazwa_przestrzeni=p["WzórDanejPrzestrzeniNazw"](nazwa_przestrzeni);
end;
nazwa_strony=p["WzórNazwyStrony"](nazwa_strony);
return ((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..nazwa_strony;
end;
p["TekstBezOdwołańDoParametrówWeWzorze"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"%%(%d+)","%%%%%1");
return tekst;
end;
p["PrzekształćWzórDoCzystegoTekstu"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
return tekst;
end;
function p.PoliczZbiory(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame,true);
local liczba_istniejacych_zbiorow=0;
local tabela_uchwytow_stron={};
for _,nazwa_strony in ipairs(args) do
local uchwyt_strony = mw.title.makeTitle('',nazwa_strony);
local tekst_artykulu = uchwyt_strony and uchwyt_strony:getContent() or nil;
local czy_istnieje=tekst_artykulu and tekst_artykulu or (uchwyt_strony and uchwyt_strony.exists or nil);
tabela_uchwytow_stron[#tabela_uchwytow_stron+1]={uchwyt_strony,tekst_artykulu,};
if(czy_istnieje)then
liczba_istniejacych_zbiorow=liczba_istniejacych_zbiorow+1;
end;
end;
return liczba_istniejacych_zbiorow,tabela_uchwytow_stron;
end;
function p.TransformacjaWzoru(ciag)
return mw.ustring.gsub(ciag,"[%^%$%(%)%%%.%[%]%*%+%-%?]","%%%1");
end;
p["WyświetlajKodySpecjalne"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
text=mw.ustring.gsub(text,"&#(%d+);",i..hash.."%1"..sr);
text=mw.ustring.gsub(text,"&(%a+);",i.."%1"..sr);
return text;
end;
function p.Wikikod(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local nazwa_modulu=((parametry_modul["CzyTakCiąg"](przestrzen)) and (przestrzen..":") or "")..(nazwa or "Przykłowa strona");
local stronicowyparser_modul=require("Module:StronicowyParser/DalszeFunkcje");
local tekst=stronicowyparser_modul.LadujZawartoscStrony(nil,nazwa_modulu,nil,false,nil,true);
if(not tekst)then
local blad_modul=require("Module:Błąd");
return blad_modul.error{args={tag="span",tekst="Nie ma takiej strony lub artykulu."}};
end;
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
tekst=mw.ustring.gsub(tekst,"&#(%d+);",i..hash.."%1"..sr);
tekst=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..sr);
local tab_znaki={
["{"]="{{(}}",
["}"]="{{)}}",
["|"]="{{!}}",
["="]="{{=}}";
};
local tab_linki={
["["]="{{!(}}",
["]"]="{{)!}}",
["|"]="{{!}}",
}
local tab_tagow={
["<"]="{{Mniejszy}}",
[">"]="{{Większy}}",
}
local tab_zmienne={
["NAMESPACE"]=true,
["PAGENAME"]=true,
};
local tablica_obiektow_strony_dany_modul={};
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne")
local tekst=stronicowyparser_potrzebne_modul.KodujStroneObiektowa(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul);
tekst=stronicowyparser_potrzebne_modul.SkladajSzablonoweWywolanie(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul,function(szablon,kod,obiekt)
if(obiekt=="TEMPLATE")then
if((mw.ustring.match(szablon,"^{{%s*#invoke:"))or(not mw.ustring.match(szablon,"^{{%s*#%a+:")))then
if(mw.ustring.match(szablon,"|"))then
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
else
local pseudoszablon=mw.ustring.match(szablon,"^{{%s*(%a+)%s*:") or mw.ustring.match(szablon,"^{{%s*(%a+)%s*}}$")
if(pseudoszablon)then
if(tab_zmienne[pseudoszablon])then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
end;
else
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
end;
elseif((obiekt=="LINKW")or(obiekt=="LINKZ"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif(obiekt=="VAR")then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif((obiekt=="NOWIKI")or(obiekt=="PRE")or(obiekt=="MATH"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak] or tab_tagow[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
else
return szablon;
end;
end);
return frame:getParent():preprocess(tekst);
end;
p["WikikodStrony"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
return text;
end;
function p.LuaSubst(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local strona=args[1] or args["strona"];
if(not parametry_modul.CzyTak(strona))then return "(Bład: nazwa strony jest pusta lub nie podana)";end;
local title=mw.title.makeTitle('',strona);
if((not title)or (not title.exists))then return "(Bł≥ąd: Strona nie istnieje)";end;
local tekst=title:getContent();
local inkludowany=parametry_modul.CzyTak(args["inkludowana"]);
if(inkludowany)then
tekst,_=mw.ustring.gsub(tekst,"<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>(.-)</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>","");
tekst,_=mw.ustring.gsub(tekst,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.-)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
end;
return tekst;
end;
p["RozwiniętyWikikodStrony"]=function (frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame)
local PobierzParametr=parametry_modul.PobierzParametr(args);
local nazwa=PobierzParametr("Nazwa strony") or PobierzParametr("Nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("Miano przestrzeni nazw") or PobierzParametr("Przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
local bezkluczy={["Nazwa strony"]=true,["Nazwa"]=true,["Miano przestrzeni nazw"]=true,["Przestrzeń"]=true,};
if czy_wyspecjalizowana then
bezkluczy["wyspecjalizowana"]=true;
bezkluczy["nie rozwiń"]=true;
end;
local tab=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,bezkluczy);
local frame2=mw.getCurrentFrame():newChild{title=(parametry_modul.CzyTak(przestrzen)and (przestrzen..":"..nazwa) or nazwa),args=tab};
local czy2=(czy and frame.args);
text=(czy2 and (not parametry_modul.CzyTak(frame.args["nie rozwiń"])) or (not czy2 and true)) and frame2:preprocess(text) or text;
return text;
end;
function p.NowaLinia(frame)
return "\n";
end;
function p.Nowiki(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local PobierzParametr=parametry_modul.PobierzParametr(args);
local tekst=PobierzParametr("tekst") or PobierzParametr(1);
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local h=html_modul.KodHTMLZnaku("#");
local s=html_modul.KodHTMLZnaku(";");
tekst,_=mw.ustring.gsub(tekst,"&#(%d+);",i..h.."%1"..s);
tekst,_=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..s);
local sprawdz_modul=require("Module:Sprawdź");
tekst=sprawdz_modul["UsuńKategorięSprawdzaniaParametrówSzablonu"]{args={[1]=tekst,},}
tekst=frame:callParserFunction('#tag:nowiki',tekst);
return tekst;
end;
function p.FunkcjaLua(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local modul=require("Module:"..(args[1] or args["moduł"]));
if(modul)then
if(modul[asgs[2] or args["nazwa"] or args["funkcja"]])then
local args2=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,{[1]=true,["moduł"]=true,[2]=true,nazwa=true,funkcja=true,["wyspecjalizowana"]=true,})
return modul[asgs[2] or args["nazwa"] or args["funkcja"]](args2);
end;
end;
end;
p["LiczbaBajtówCiąguDoNormy"] = function(frame)
local str=frame.args[1] or frame.args["ciąg"];
local ile=tonumber(frame.args[2] or frame.args["norma"]);
if(not ile)then return #str;end;
if(#str<=ile)then
return #str;
end;
return nil;
end;
p["LiczbaStronJakoPozycjeDanejKategorii"]=function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local kategoria=parametry_modul.CzyTak(args["kategoria"]) and args["kategoria"] or "Category:Przykładowa kategoria";
local kat={
["subcats"]=true,
["files"]=true,
["pages"]=true,
}
local typ=args["typ"] or "all";
typ=kat[args["typ"]] and args["typ"] or "all";
local nazwy_modul=require("Module:Nazwy");
kategoria=nazwy_modul["NAZWASTRONY"](kategoria);
return mw.site.stats.pagesInCategory(kategoria,typ);
end;
return p;
azhe3nu0vcg1ixdr40yoh1aqmu4d70f
439029
439025
2022-08-29T08:35:57Z
Persino
2851
Scribunto
text/plain
local p={};
p["ParsujWywołanieSzablonu"] = function(wywolanie_szablonu)
local wywolanie_bez_parametrow=mw.ustring.match(wywolanie_szablonu,"^{{[^{}|]-}}$");
if(not wywolanie_bez_parametrow)then
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*|.-}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
local parametry_wywolania_szablonu=mw.ustring.match(wywolanie_szablonu,"{{[^{}|]*|([^{}]*)}}");
return ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu);
else return nil;end;
else
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
return parametry_szablonu;
else return nil;end;
end;
end;
function ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu)
local kawalek_wywolania,dalszy_kawalek_wywolania=mw.ustring.match(parametry_wywolania_szablonu,"^([^|]*)|(.*)$");
if(not kawalek_wywolania)then
kawalek_wywolania=parametry_wywolania_szablonu;
end;
if(not dalszy_kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return parametry_szablonu;
end;
if(kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return ParametrySzablonu(dalszy_kawalek_wywolania,parametry_szablonu);
end;
return nil;
end;
function ZbierzParametrSzablonu(tworzona_tabela, kawalek_wywolania)
local kawalek_wywolania_element_nienazwany=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*$");
if(kawalek_wywolania_element_nienazwany)then
tworzona_tabela[#tworzona_tabela+1]=mw.text.trim(kawalek_wywolania_element_nienazwany);
return tworzona_tabela;
else
local kawalek_wywolania_klucz,kawalek_wywolania_wartosc=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*=%s*([^|{}]-)%s*$");
if((kawalek_wywolania_klucz)and(kawalek_wywolania_wartosc))then
if(not mw.ustring.match(kawalek_wywolania_klucz,"^%s*%d+%s*$"))then
tworzona_tabela[mw.text.trim(kawalek_wywolania_klucz)]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
else
tworzona_tabela[tonumber(mw.text.trim(kawalek_wywolania_klucz))]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
end;
else
return nil;
end;
end;
return nil;
end;
p["PokażSzablon"]=function(szablon, args)
local result = {}
local flags = {}
table.insert(result, mw.text.nowiki("{{"))
if mw.isSubsting() then
table.insert(result, "subst:")
end
table.insert(result, szablon);
if args then
for k, v in pairs(args) do
if (type(k)~="number")then
table.insert(result, "|")
table.insert(result, tostring(k))
table.insert(result, "=")
table.insert(result, mw.text.nowiki(v))
else
table.insert(result, "|")
table.insert(result, mw.text.nowiki(v))
end
end
end
table.insert(result, mw.text.nowiki("}}"))
return table.concat(result)
end;
function p.NazwaSzablonu(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa,_=PobierzParametr();
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa);
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np")
if(nazwa_przestrzeni==nazwy_np_modul.Template)then
return nazwy_modul["NAZWASTRONY"](nazwa);
elseif(nazwa_przestrzeni==nazwy_np_modul.Main)then
return ":"..nazwa;
else
return nazwa;
end;
end;
p["Pierwszy niepusty"]= function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local i=1;
local parametry_modul=require("Module:Parametry");
local liczba_elementow_w_tablicy_args=parametry_modul["LiczbaElementówNumerowanychZPrzedrostkiemLubNieTablicy"](args,"test");
local licznik=1;
while true do
local test=args["test"..i];
local _i=args[i];
local zmienna=test or _i;
local czy_tak=parametry_modul.CzyTak(zmienna);
if(czy_tak)then
return (_i)and _i or "{{{"..i.."}}}";
end;
if(licznik>=liczba_elementow_w_tablicy_args)then return "";end;
if(zmienna)then licznik=licznik+1;end;
i=i+1;
end;
return;
end;
p["PełnaNazwaOpisuModułu"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local pelna_nazwa_strony=PobierzParametr(1) or PobierzParametr("nazwa");
local komunikat = mw.message.new('Scribunto-doc-page-name', '$1');
local zawartosc_komunikatu;
if(komunikat:exists())then
zawartosc_komunikatu=komunikat:plain();
zawartosc_komunikatu=mw.getCurrentFrame():preprocess(zawartosc_komunikatu);
else
zawartosc_komunikatu="Module:%1/opis";
end;
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony0=nazwy_modul["PEŁNANAZWASTRONY"](zawartosc_komunikatu);
local pelna_nazwa_strony2=pelna_nazwa_strony and nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony) or nazwy_modul["PEŁNANAZWASTRONY"]();
local patternopis=mw.ustring.gsub(pelna_nazwa_strony0,"%$1",".-");
if(not mw.ustring.match(pelna_nazwa_strony2,"^"..patternopis.."$"))then
local nazwa_strony=nazwy_modul["NAZWASTRONY"](pelna_nazwa_strony2);
local przetworzona_nazwa_strony,_=mw.ustring.gsub(nazwa_strony,"(%%)","%%%%");
przetworzona_nazwa_strony,_=mw.ustring.gsub(przetworzona_nazwa_strony,"/%s*$","");
local pelna_nazwa_strony_opisu, _=mw.ustring.gsub(zawartosc_komunikatu,"%$1",przetworzona_nazwa_strony)
local pelna_strona_opisu=nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony_opisu);
return pelna_strona_opisu;
else
return pelna_nazwa_strony2;
end;
end;
p["WzórDanejPrzestrzeniNazw"] = function (frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor, _ = mw.ustring.gsub(nazwa,"(.)",function (s) return ((mw.ustring.match(s,"^%a$"))and("["..mw.ustring.upper(s)..mw.ustring.lower(s).."]")or s);end )
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["CzyIstniejeDanaPrzestrzeńNazw"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa_przestrzeni_nazw_lub_jego_identyfikator=PobierzParametr(1) or PobierzParametr("nazwa");
local uchwyt_przestrzeni_nazw;
if(mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*[%+%-]?%d+%s*$"))then
local identyfikator,_=mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*([%+%-]?%d+)%s*$");
uchwyt_przestrzeni_nazw=mw.site.namespaces[tonumber(mw.text.trim(identyfikator))];
else
uchwyt_przestrzeni_nazw=mw.site.namespaces[nazwa_przestrzeni_nazw_lub_jego_identyfikator];
end;
if(uchwyt_przestrzeni_nazw)then
return "tak";
else
return;
end;
end;
p["WzórNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor,_=mw.ustring.gsub(strona,"([%[%]%(%)%+%-%*%?%.%^%$%%'])","%%%1");
wzor,_=mw.ustring.gsub(wzor,"^(.)",function(s)return "["..mw.ustring.upper(s)..mw.ustring.lower(s).."]";end);
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["WzórPełnejNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_strony=nazwy_modul["NAZWASTRONY"](strona);
if(nazwa_przestrzeni~="")then
nazwa_przestrzeni=p["WzórDanejPrzestrzeniNazw"](nazwa_przestrzeni);
end;
nazwa_strony=p["WzórNazwyStrony"](nazwa_strony);
return ((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..nazwa_strony;
end;
p["TekstBezOdwołańDoParametrówWeWzorze"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"%%(%d+)","%%%%%1");
return tekst;
end;
p["PrzekształćWzórDoCzystegoTekstu"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
return tekst;
end;
function p.PoliczZbiory(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame,true);
local liczba_istniejacych_zbiorow=0;
local tabela_uchwytow_stron={};
for _,nazwa_strony in ipairs(args) do
local uchwyt_strony = mw.title.makeTitle('',nazwa_strony);
local tekst_artykulu = uchwyt_strony and uchwyt_strony:getContent() or nil;
local czy_istnieje=tekst_artykulu and tekst_artykulu or (uchwyt_strony and uchwyt_strony.exists or nil);
tabela_uchwytow_stron[#tabela_uchwytow_stron+1]={uchwyt_strony,tekst_artykulu,};
if(czy_istnieje)then
liczba_istniejacych_zbiorow=liczba_istniejacych_zbiorow+1;
end;
end;
return liczba_istniejacych_zbiorow,tabela_uchwytow_stron;
end;
function p.TransformacjaWzoru(ciag)
return mw.ustring.gsub(ciag,"[%^%$%(%)%%%.%[%]%*%+%-%?]","%%%1");
end;
p["WyświetlajKodySpecjalne"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
text=mw.ustring.gsub(text,"&#(%d+);",i..hash.."%1"..sr);
text=mw.ustring.gsub(text,"&(%a+);",i.."%1"..sr);
return text;
end;
function p.Wikikod(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local nazwa_modulu=((parametry_modul["CzyTakCiąg"](przestrzen)) and (przestrzen..":") or "")..(nazwa or "Przykłowa strona");
local stronicowyparser_modul=require("Module:StronicowyParser/DalszeFunkcje");
local tekst=stronicowyparser_modul.LadujZawartoscStrony(nil,nazwa_modulu,nil,false,nil,true);
if(not tekst)then
local blad_modul=require("Module:Błąd");
return blad_modul.error{args={tag="span",tekst="Nie ma takiej strony lub artykulu."}};
end;
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
tekst=mw.ustring.gsub(tekst,"&#(%d+);",i..hash.."%1"..sr);
tekst=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..sr);
local tab_znaki={
["{"]="{{(}}",
["}"]="{{)}}",
["|"]="{{!}}",
["="]="{{=}}";
};
local tab_linki={
["["]="{{!(}}",
["]"]="{{)!}}",
["|"]="{{!}}",
}
local tab_tagow={
["<"]="{{Mniejszy}}",
[">"]="{{Większy}}",
}
local tab_zmienne={
["NAMESPACE"]=true,
["PAGENAME"]=true,
};
local tablica_obiektow_strony_dany_modul={};
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne")
local tekst=stronicowyparser_potrzebne_modul.KodujStroneObiektowa(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul);
tekst=stronicowyparser_potrzebne_modul.SkladajSzablonoweWywolanie(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul,function(szablon,kod,obiekt)
if(obiekt=="TEMPLATE")then
if((mw.ustring.match(szablon,"^{{%s*#invoke:"))or(not mw.ustring.match(szablon,"^{{%s*#%a+:")))then
if(mw.ustring.match(szablon,"|"))then
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
else
local pseudoszablon=mw.ustring.match(szablon,"^{{%s*(%a+)%s*:") or mw.ustring.match(szablon,"^{{%s*(%a+)%s*}}$")
if(pseudoszablon)then
if(tab_zmienne[pseudoszablon])then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
end;
else
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
end;
elseif((obiekt=="LINKW")or(obiekt=="LINKZ"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif(obiekt=="VAR")then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif((obiekt=="NOWIKI")or(obiekt=="PRE")or(obiekt=="MATH"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak] or tab_tagow[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
else
return szablon;
end;
end);
return frame:getParent():preprocess(tekst);
end;
p["WikikodStrony"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
return text;
end;
function p.LuaSubst(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local strona=args[1] or args["strona"];
if(not parametry_modul.CzyTak(strona))then return "(Bład: nazwa strony jest pusta lub nie podana)";end;
local title=mw.title.makeTitle('',strona);
if((not title)or (not title.exists))then return "(Błąd: Strona nie istnieje)";end;
local tekst=title:getContent();
local inkludowany=parametry_modul.CzyTak(args["inkludowana"]);
if(inkludowany)then
tekst,_=mw.ustring.gsub(tekst,"<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>(.-)</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>","");
tekst,_=mw.ustring.gsub(tekst,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.-)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
end;
return tekst;
end;
p["RozwiniętyWikikodStrony"]=function (frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame)
local PobierzParametr=parametry_modul.PobierzParametr(args);
local nazwa=PobierzParametr("Nazwa strony") or PobierzParametr("Nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("Miano przestrzeni nazw") or PobierzParametr("Przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
local bezkluczy={["Nazwa strony"]=true,["Nazwa"]=true,["Miano przestrzeni nazw"]=true,["Przestrzeń"]=true,};
if czy_wyspecjalizowana then
bezkluczy["wyspecjalizowana"]=true;
bezkluczy["nie rozwiń"]=true;
end;
local tab=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,bezkluczy);
local frame2=mw.getCurrentFrame():newChild{title=(parametry_modul.CzyTak(przestrzen)and (przestrzen..":"..nazwa) or nazwa),args=tab};
local czy2=(czy and frame.args);
text=(czy2 and (not parametry_modul.CzyTak(frame.args["nie rozwiń"])) or (not czy2 and true)) and frame2:preprocess(text) or text;
return text;
end;
function p.NowaLinia(frame)
return "\n";
end;
function p.Nowiki(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local PobierzParametr=parametry_modul.PobierzParametr(args);
local tekst=PobierzParametr("tekst") or PobierzParametr(1);
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local h=html_modul.KodHTMLZnaku("#");
local s=html_modul.KodHTMLZnaku(";");
tekst,_=mw.ustring.gsub(tekst,"&#(%d+);",i..h.."%1"..s);
tekst,_=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..s);
local sprawdz_modul=require("Module:Sprawdź");
tekst=sprawdz_modul["UsuńKategorięSprawdzaniaParametrówSzablonu"]{args={[1]=tekst,},}
tekst=frame:callParserFunction('#tag:nowiki',tekst);
return tekst;
end;
function p.FunkcjaLua(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local modul=require("Module:"..(args[1] or args["moduł"]));
if(modul)then
if(modul[asgs[2] or args["nazwa"] or args["funkcja"]])then
local args2=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,{[1]=true,["moduł"]=true,[2]=true,nazwa=true,funkcja=true,["wyspecjalizowana"]=true,})
return modul[asgs[2] or args["nazwa"] or args["funkcja"]](args2);
end;
end;
end;
p["LiczbaBajtówCiąguDoNormy"] = function(frame)
local str=frame.args[1] or frame.args["ciąg"];
local ile=tonumber(frame.args[2] or frame.args["norma"]);
if(not ile)then return #str;end;
if(#str<=ile)then
return #str;
end;
return nil;
end;
p["LiczbaStronJakoPozycjeDanejKategorii"]=function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local kategoria=parametry_modul.CzyTak(args["kategoria"]) and args["kategoria"] or "Category:Przykładowa kategoria";
local kat={
["subcats"]=true,
["files"]=true,
["pages"]=true,
}
local typ=args["typ"] or "all";
typ=kat[args["typ"]] and args["typ"] or "all";
local nazwy_modul=require("Module:Nazwy");
kategoria=nazwy_modul["NAZWASTRONY"](kategoria);
return mw.site.stats.pagesInCategory(kategoria,typ);
end;
return p;
g79n6w0zpjqlpe2x83it4se7sdtxh88
439030
439029
2022-08-29T09:04:50Z
Persino
2851
Scribunto
text/plain
local p={};
p["ParsujWywołanieSzablonu"] = function(wywolanie_szablonu)
local wywolanie_bez_parametrow=mw.ustring.match(wywolanie_szablonu,"^{{[^{}|]-}}$");
if(not wywolanie_bez_parametrow)then
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*|.-}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
local parametry_wywolania_szablonu=mw.ustring.match(wywolanie_szablonu,"{{[^{}|]*|([^{}]*)}}");
return ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu);
else return nil;end;
else
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
return parametry_szablonu;
else return nil;end;
end;
end;
function ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu)
local kawalek_wywolania,dalszy_kawalek_wywolania=mw.ustring.match(parametry_wywolania_szablonu,"^([^|]*)|(.*)$");
if(not kawalek_wywolania)then
kawalek_wywolania=parametry_wywolania_szablonu;
end;
if(not dalszy_kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return parametry_szablonu;
end;
if(kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return ParametrySzablonu(dalszy_kawalek_wywolania,parametry_szablonu);
end;
return nil;
end;
function ZbierzParametrSzablonu(tworzona_tabela, kawalek_wywolania)
local kawalek_wywolania_element_nienazwany=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*$");
if(kawalek_wywolania_element_nienazwany)then
tworzona_tabela[#tworzona_tabela+1]=mw.text.trim(kawalek_wywolania_element_nienazwany);
return tworzona_tabela;
else
local kawalek_wywolania_klucz,kawalek_wywolania_wartosc=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*=%s*([^|{}]-)%s*$");
if((kawalek_wywolania_klucz)and(kawalek_wywolania_wartosc))then
if(not mw.ustring.match(kawalek_wywolania_klucz,"^%s*%d+%s*$"))then
tworzona_tabela[mw.text.trim(kawalek_wywolania_klucz)]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
else
tworzona_tabela[tonumber(mw.text.trim(kawalek_wywolania_klucz))]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
end;
else
return nil;
end;
end;
return nil;
end;
p["PokażSzablon"]=function(szablon, args)
local result = {}
local flags = {}
table.insert(result, mw.text.nowiki("{{"))
if mw.isSubsting() then
table.insert(result, "subst:")
end
table.insert(result, szablon);
if args then
for k, v in pairs(args) do
if (type(k)~="number")then
table.insert(result, "|")
table.insert(result, tostring(k))
table.insert(result, "=")
table.insert(result, mw.text.nowiki(v))
else
table.insert(result, "|")
table.insert(result, mw.text.nowiki(v))
end
end
end
table.insert(result, mw.text.nowiki("}}"))
return table.concat(result)
end;
function p.NazwaSzablonu(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa,_=PobierzParametr();
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa);
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np")
if(nazwa_przestrzeni==nazwy_np_modul.Template)then
return nazwy_modul["NAZWASTRONY"](nazwa);
elseif(nazwa_przestrzeni==nazwy_np_modul.Main)then
return ":"..nazwa;
else
return nazwa;
end;
end;
p["Pierwszy niepusty"]= function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local i=1;
local parametry_modul=require("Module:Parametry");
local liczba_elementow_w_tablicy_args=parametry_modul["LiczbaElementówNumerowanychZPrzedrostkiemLubNieTablicy"](args,"test");
local licznik=1;
while true do
local test=args["test"..i];
local _i=args[i];
local zmienna=test or _i;
local czy_tak=parametry_modul.CzyTak(zmienna);
if(czy_tak)then
return (_i)and _i or "{{{"..i.."}}}";
end;
if(licznik>=liczba_elementow_w_tablicy_args)then return "";end;
if(zmienna)then licznik=licznik+1;end;
i=i+1;
end;
return;
end;
p["PełnaNazwaOpisuModułu"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local pelna_nazwa_strony=PobierzParametr(1) or PobierzParametr("nazwa");
local komunikat = mw.message.new('Scribunto-doc-page-name', '$1');
local zawartosc_komunikatu;
if(komunikat:exists())then
zawartosc_komunikatu=komunikat:plain();
zawartosc_komunikatu=mw.getCurrentFrame():preprocess(zawartosc_komunikatu);
else
zawartosc_komunikatu="Module:%1/opis";
end;
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony0=nazwy_modul["PEŁNANAZWASTRONY"](zawartosc_komunikatu);
local pelna_nazwa_strony2=pelna_nazwa_strony and nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony) or nazwy_modul["PEŁNANAZWASTRONY"]();
local patternopis=mw.ustring.gsub(pelna_nazwa_strony0,"%$1",".-");
if(not mw.ustring.match(pelna_nazwa_strony2,"^"..patternopis.."$"))then
local nazwa_strony=nazwy_modul["NAZWASTRONY"](pelna_nazwa_strony2);
local przetworzona_nazwa_strony,_=mw.ustring.gsub(nazwa_strony,"(%%)","%%%%");
przetworzona_nazwa_strony,_=mw.ustring.gsub(przetworzona_nazwa_strony,"/%s*$","");
local pelna_nazwa_strony_opisu, _=mw.ustring.gsub(zawartosc_komunikatu,"%$1",przetworzona_nazwa_strony)
local pelna_strona_opisu=nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony_opisu);
return pelna_strona_opisu;
else
return pelna_nazwa_strony2;
end;
end;
p["WzórDanejPrzestrzeniNazw"] = function (frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor, _ = mw.ustring.gsub(nazwa,"(.)",function (s) return ((mw.ustring.match(s,"^%a$"))and("["..mw.ustring.upper(s)..mw.ustring.lower(s).."]")or s);end )
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["CzyIstniejeDanaPrzestrzeńNazw"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa_przestrzeni_nazw_lub_jego_identyfikator=PobierzParametr(1) or PobierzParametr("nazwa");
local uchwyt_przestrzeni_nazw;
if(mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*[%+%-]?%d+%s*$"))then
local identyfikator,_=mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*([%+%-]?%d+)%s*$");
uchwyt_przestrzeni_nazw=mw.site.namespaces[tonumber(mw.text.trim(identyfikator))];
else
uchwyt_przestrzeni_nazw=mw.site.namespaces[nazwa_przestrzeni_nazw_lub_jego_identyfikator];
end;
if(uchwyt_przestrzeni_nazw)then
return "tak";
else
return;
end;
end;
p["WzórNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor,_=mw.ustring.gsub(strona,"([%[%]%(%)%+%-%*%?%.%^%$%%'])","%%%1");
wzor,_=mw.ustring.gsub(wzor,"^(.)",function(s)return "["..mw.ustring.upper(s)..mw.ustring.lower(s).."]";end);
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["WzórPełnejNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_strony=nazwy_modul["NAZWASTRONY"](strona);
if(nazwa_przestrzeni~="")then
nazwa_przestrzeni=p["WzórDanejPrzestrzeniNazw"](nazwa_przestrzeni);
end;
nazwa_strony=p["WzórNazwyStrony"](nazwa_strony);
return ((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..nazwa_strony;
end;
p["TekstBezOdwołańDoParametrówWeWzorze"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"%%(%d+)","%%%%%1");
return tekst;
end;
p["PrzekształćWzórDoCzystegoTekstu"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
return tekst;
end;
function p.PoliczZbiory(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame,true);
local liczba_istniejacych_zbiorow=0;
local tabela_uchwytow_stron={};
for _,nazwa_strony in ipairs(args) do
local uchwyt_strony = mw.title.makeTitle('',nazwa_strony);
local tekst_artykulu = uchwyt_strony and uchwyt_strony:getContent() or nil;
local czy_istnieje=tekst_artykulu and tekst_artykulu or (uchwyt_strony and uchwyt_strony.exists or nil);
tabela_uchwytow_stron[#tabela_uchwytow_stron+1]={uchwyt_strony,tekst_artykulu,};
if(czy_istnieje)then
liczba_istniejacych_zbiorow=liczba_istniejacych_zbiorow+1;
end;
end;
return liczba_istniejacych_zbiorow,tabela_uchwytow_stron;
end;
function p.TransformacjaWzoru(ciag)
return mw.ustring.gsub(ciag,"[%^%$%(%)%%%.%[%]%*%+%-%?]","%%%1");
end;
p["WyświetlajKodySpecjalne"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
text=mw.ustring.gsub(text,"&#(%d+);",i..hash.."%1"..sr);
text=mw.ustring.gsub(text,"&(%a+);",i.."%1"..sr);
return text;
end;
function p.Wikikod(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local nazwa_modulu=((parametry_modul["CzyTakCiąg"](przestrzen)) and (przestrzen..":") or "")..(nazwa or "Przykłowa strona");
local stronicowyparser_modul=require("Module:StronicowyParser/DalszeFunkcje");
local tekst=stronicowyparser_modul.LadujZawartoscStrony(nil,nazwa_modulu,nil,false,nil,true);
if(not tekst)then
local blad_modul=require("Module:Błąd");
return blad_modul.error{args={tag="span",tekst="Nie ma takiej strony lub artykulu."}};
end;
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
tekst=mw.ustring.gsub(tekst,"&#(%d+);",i..hash.."%1"..sr);
tekst=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..sr);
local tab_znaki={
["{"]="{{(}}",
["}"]="{{)}}",
["|"]="{{!}}",
["="]="{{=}}";
};
local tab_linki={
["["]="{{!(}}",
["]"]="{{)!}}",
["|"]="{{!}}",
}
local tab_tagow={
["<"]="{{Mniejszy}}",
[">"]="{{Większy}}",
}
local tab_zmienne={
["NAMESPACE"]=true,
["PAGENAME"]=true,
};
local tablica_obiektow_strony_dany_modul={};
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne")
local tekst=stronicowyparser_potrzebne_modul.KodujStroneObiektowa(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul);
tekst=stronicowyparser_potrzebne_modul.SkladajSzablonoweWywolanie(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul,function(szablon,kod,obiekt)
if(obiekt=="TEMPLATE")then
if((mw.ustring.match(szablon,"^{{%s*#invoke:"))or(not mw.ustring.match(szablon,"^{{%s*#%a+:")))then
if(mw.ustring.match(szablon,"|"))then
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
else
local pseudoszablon=mw.ustring.match(szablon,"^{{%s*subst%s*:%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*safesubst%s*:%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*subst%s*:%s*(%a+)%s*}}$")
or mw.ustring.match(szablon,"^{{%s*safesubst%s*:%s*(%a+)%s*}}$")
or mw.ustring.match(szablon,"^{{%s*(%a+)%s*}}$")
if(pseudoszablon)then
if(tab_zmienne[pseudoszablon])then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
end;
else
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
end;
elseif((obiekt=="LINKW")or(obiekt=="LINKZ"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif(obiekt=="VAR")then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif((obiekt=="NOWIKI")or(obiekt=="PRE")or(obiekt=="MATH"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak] or tab_tagow[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
else
return szablon;
end;
end);
return frame:getParent():preprocess(tekst);
end;
p["WikikodStrony"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
return text;
end;
function p.LuaSubst(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local strona=args[1] or args["strona"];
if(not parametry_modul.CzyTak(strona))then return "(Bład: nazwa strony jest pusta lub nie podana)";end;
local title=mw.title.makeTitle('',strona);
if((not title)or (not title.exists))then return "(Błąd: Strona nie istnieje)";end;
local tekst=title:getContent();
local inkludowany=parametry_modul.CzyTak(args["inkludowana"]);
if(inkludowany)then
tekst,_=mw.ustring.gsub(tekst,"<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>(.-)</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>","");
tekst,_=mw.ustring.gsub(tekst,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.-)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
end;
return tekst;
end;
p["RozwiniętyWikikodStrony"]=function (frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame)
local PobierzParametr=parametry_modul.PobierzParametr(args);
local nazwa=PobierzParametr("Nazwa strony") or PobierzParametr("Nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("Miano przestrzeni nazw") or PobierzParametr("Przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
local bezkluczy={["Nazwa strony"]=true,["Nazwa"]=true,["Miano przestrzeni nazw"]=true,["Przestrzeń"]=true,};
if czy_wyspecjalizowana then
bezkluczy["wyspecjalizowana"]=true;
bezkluczy["nie rozwiń"]=true;
end;
local tab=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,bezkluczy);
local frame2=mw.getCurrentFrame():newChild{title=(parametry_modul.CzyTak(przestrzen)and (przestrzen..":"..nazwa) or nazwa),args=tab};
local czy2=(czy and frame.args);
text=(czy2 and (not parametry_modul.CzyTak(frame.args["nie rozwiń"])) or (not czy2 and true)) and frame2:preprocess(text) or text;
return text;
end;
function p.NowaLinia(frame)
return "\n";
end;
function p.Nowiki(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local PobierzParametr=parametry_modul.PobierzParametr(args);
local tekst=PobierzParametr("tekst") or PobierzParametr(1);
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local h=html_modul.KodHTMLZnaku("#");
local s=html_modul.KodHTMLZnaku(";");
tekst,_=mw.ustring.gsub(tekst,"&#(%d+);",i..h.."%1"..s);
tekst,_=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..s);
local sprawdz_modul=require("Module:Sprawdź");
tekst=sprawdz_modul["UsuńKategorięSprawdzaniaParametrówSzablonu"]{args={[1]=tekst,},}
tekst=frame:callParserFunction('#tag:nowiki',tekst);
return tekst;
end;
function p.FunkcjaLua(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local modul=require("Module:"..(args[1] or args["moduł"]));
if(modul)then
if(modul[asgs[2] or args["nazwa"] or args["funkcja"]])then
local args2=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,{[1]=true,["moduł"]=true,[2]=true,nazwa=true,funkcja=true,["wyspecjalizowana"]=true,})
return modul[asgs[2] or args["nazwa"] or args["funkcja"]](args2);
end;
end;
end;
p["LiczbaBajtówCiąguDoNormy"] = function(frame)
local str=frame.args[1] or frame.args["ciąg"];
local ile=tonumber(frame.args[2] or frame.args["norma"]);
if(not ile)then return #str;end;
if(#str<=ile)then
return #str;
end;
return nil;
end;
p["LiczbaStronJakoPozycjeDanejKategorii"]=function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local kategoria=parametry_modul.CzyTak(args["kategoria"]) and args["kategoria"] or "Category:Przykładowa kategoria";
local kat={
["subcats"]=true,
["files"]=true,
["pages"]=true,
}
local typ=args["typ"] or "all";
typ=kat[args["typ"]] and args["typ"] or "all";
local nazwy_modul=require("Module:Nazwy");
kategoria=nazwy_modul["NAZWASTRONY"](kategoria);
return mw.site.stats.pagesInCategory(kategoria,typ);
end;
return p;
o0bjy29rh2kapbthiqzp55xvkmyvzuy
439031
439030
2022-08-29T09:10:50Z
Persino
2851
Scribunto
text/plain
local p={};
p["ParsujWywołanieSzablonu"] = function(wywolanie_szablonu)
local wywolanie_bez_parametrow=mw.ustring.match(wywolanie_szablonu,"^{{[^{}|]-}}$");
if(not wywolanie_bez_parametrow)then
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*|.-}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
local parametry_wywolania_szablonu=mw.ustring.match(wywolanie_szablonu,"{{[^{}|]*|([^{}]*)}}");
return ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu);
else return nil;end;
else
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
return parametry_szablonu;
else return nil;end;
end;
end;
function ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu)
local kawalek_wywolania,dalszy_kawalek_wywolania=mw.ustring.match(parametry_wywolania_szablonu,"^([^|]*)|(.*)$");
if(not kawalek_wywolania)then
kawalek_wywolania=parametry_wywolania_szablonu;
end;
if(not dalszy_kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return parametry_szablonu;
end;
if(kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return ParametrySzablonu(dalszy_kawalek_wywolania,parametry_szablonu);
end;
return nil;
end;
function ZbierzParametrSzablonu(tworzona_tabela, kawalek_wywolania)
local kawalek_wywolania_element_nienazwany=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*$");
if(kawalek_wywolania_element_nienazwany)then
tworzona_tabela[#tworzona_tabela+1]=mw.text.trim(kawalek_wywolania_element_nienazwany);
return tworzona_tabela;
else
local kawalek_wywolania_klucz,kawalek_wywolania_wartosc=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*=%s*([^|{}]-)%s*$");
if((kawalek_wywolania_klucz)and(kawalek_wywolania_wartosc))then
if(not mw.ustring.match(kawalek_wywolania_klucz,"^%s*%d+%s*$"))then
tworzona_tabela[mw.text.trim(kawalek_wywolania_klucz)]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
else
tworzona_tabela[tonumber(mw.text.trim(kawalek_wywolania_klucz))]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
end;
else
return nil;
end;
end;
return nil;
end;
p["PokażSzablon"]=function(szablon, args)
local result = {}
local flags = {}
table.insert(result, mw.text.nowiki("{{"))
if mw.isSubsting() then
table.insert(result, "subst:")
end
table.insert(result, szablon);
if args then
for k, v in pairs(args) do
if (type(k)~="number")then
table.insert(result, "|")
table.insert(result, tostring(k))
table.insert(result, "=")
table.insert(result, mw.text.nowiki(v))
else
table.insert(result, "|")
table.insert(result, mw.text.nowiki(v))
end
end
end
table.insert(result, mw.text.nowiki("}}"))
return table.concat(result)
end;
function p.NazwaSzablonu(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa,_=PobierzParametr();
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa);
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np")
if(nazwa_przestrzeni==nazwy_np_modul.Template)then
return nazwy_modul["NAZWASTRONY"](nazwa);
elseif(nazwa_przestrzeni==nazwy_np_modul.Main)then
return ":"..nazwa;
else
return nazwa;
end;
end;
p["Pierwszy niepusty"]= function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local i=1;
local parametry_modul=require("Module:Parametry");
local liczba_elementow_w_tablicy_args=parametry_modul["LiczbaElementówNumerowanychZPrzedrostkiemLubNieTablicy"](args,"test");
local licznik=1;
while true do
local test=args["test"..i];
local _i=args[i];
local zmienna=test or _i;
local czy_tak=parametry_modul.CzyTak(zmienna);
if(czy_tak)then
return (_i)and _i or "{{{"..i.."}}}";
end;
if(licznik>=liczba_elementow_w_tablicy_args)then return "";end;
if(zmienna)then licznik=licznik+1;end;
i=i+1;
end;
return;
end;
p["PełnaNazwaOpisuModułu"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local pelna_nazwa_strony=PobierzParametr(1) or PobierzParametr("nazwa");
local komunikat = mw.message.new('Scribunto-doc-page-name', '$1');
local zawartosc_komunikatu;
if(komunikat:exists())then
zawartosc_komunikatu=komunikat:plain();
zawartosc_komunikatu=mw.getCurrentFrame():preprocess(zawartosc_komunikatu);
else
zawartosc_komunikatu="Module:%1/opis";
end;
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony0=nazwy_modul["PEŁNANAZWASTRONY"](zawartosc_komunikatu);
local pelna_nazwa_strony2=pelna_nazwa_strony and nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony) or nazwy_modul["PEŁNANAZWASTRONY"]();
local patternopis=mw.ustring.gsub(pelna_nazwa_strony0,"%$1",".-");
if(not mw.ustring.match(pelna_nazwa_strony2,"^"..patternopis.."$"))then
local nazwa_strony=nazwy_modul["NAZWASTRONY"](pelna_nazwa_strony2);
local przetworzona_nazwa_strony,_=mw.ustring.gsub(nazwa_strony,"(%%)","%%%%");
przetworzona_nazwa_strony,_=mw.ustring.gsub(przetworzona_nazwa_strony,"/%s*$","");
local pelna_nazwa_strony_opisu, _=mw.ustring.gsub(zawartosc_komunikatu,"%$1",przetworzona_nazwa_strony)
local pelna_strona_opisu=nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony_opisu);
return pelna_strona_opisu;
else
return pelna_nazwa_strony2;
end;
end;
p["WzórDanejPrzestrzeniNazw"] = function (frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor, _ = mw.ustring.gsub(nazwa,"(.)",function (s) return ((mw.ustring.match(s,"^%a$"))and("["..mw.ustring.upper(s)..mw.ustring.lower(s).."]")or s);end )
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["CzyIstniejeDanaPrzestrzeńNazw"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa_przestrzeni_nazw_lub_jego_identyfikator=PobierzParametr(1) or PobierzParametr("nazwa");
local uchwyt_przestrzeni_nazw;
if(mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*[%+%-]?%d+%s*$"))then
local identyfikator,_=mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*([%+%-]?%d+)%s*$");
uchwyt_przestrzeni_nazw=mw.site.namespaces[tonumber(mw.text.trim(identyfikator))];
else
uchwyt_przestrzeni_nazw=mw.site.namespaces[nazwa_przestrzeni_nazw_lub_jego_identyfikator];
end;
if(uchwyt_przestrzeni_nazw)then
return "tak";
else
return;
end;
end;
p["WzórNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor,_=mw.ustring.gsub(strona,"([%[%]%(%)%+%-%*%?%.%^%$%%'])","%%%1");
wzor,_=mw.ustring.gsub(wzor,"^(.)",function(s)return "["..mw.ustring.upper(s)..mw.ustring.lower(s).."]";end);
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["WzórPełnejNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_strony=nazwy_modul["NAZWASTRONY"](strona);
if(nazwa_przestrzeni~="")then
nazwa_przestrzeni=p["WzórDanejPrzestrzeniNazw"](nazwa_przestrzeni);
end;
nazwa_strony=p["WzórNazwyStrony"](nazwa_strony);
return ((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..nazwa_strony;
end;
p["TekstBezOdwołańDoParametrówWeWzorze"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"%%(%d+)","%%%%%1");
return tekst;
end;
p["PrzekształćWzórDoCzystegoTekstu"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
return tekst;
end;
function p.PoliczZbiory(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame,true);
local liczba_istniejacych_zbiorow=0;
local tabela_uchwytow_stron={};
for _,nazwa_strony in ipairs(args) do
local uchwyt_strony = mw.title.makeTitle('',nazwa_strony);
local tekst_artykulu = uchwyt_strony and uchwyt_strony:getContent() or nil;
local czy_istnieje=tekst_artykulu and tekst_artykulu or (uchwyt_strony and uchwyt_strony.exists or nil);
tabela_uchwytow_stron[#tabela_uchwytow_stron+1]={uchwyt_strony,tekst_artykulu,};
if(czy_istnieje)then
liczba_istniejacych_zbiorow=liczba_istniejacych_zbiorow+1;
end;
end;
return liczba_istniejacych_zbiorow,tabela_uchwytow_stron;
end;
function p.TransformacjaWzoru(ciag)
return mw.ustring.gsub(ciag,"[%^%$%(%)%%%.%[%]%*%+%-%?]","%%%1");
end;
p["WyświetlajKodySpecjalne"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
text=mw.ustring.gsub(text,"&#(%d+);",i..hash.."%1"..sr);
text=mw.ustring.gsub(text,"&(%a+);",i.."%1"..sr);
return text;
end;
function p.Wikikod(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local nazwa_modulu=((parametry_modul["CzyTakCiąg"](przestrzen)) and (przestrzen..":") or "")..(nazwa or "Przykłowa strona");
local stronicowyparser_modul=require("Module:StronicowyParser/DalszeFunkcje");
local tekst=stronicowyparser_modul.LadujZawartoscStrony(nil,nazwa_modulu,nil,false,nil,true);
if(not tekst)then
local blad_modul=require("Module:Błąd");
return blad_modul.error{args={tag="span",tekst="Nie ma takiej strony lub artykulu."}};
end;
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
tekst=mw.ustring.gsub(tekst,"&#(%d+);",i..hash.."%1"..sr);
tekst=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..sr);
local tab_znaki={
["{"]="{{(}}",
["}"]="{{)}}",
["|"]="{{!}}",
["="]="{{=}}";
};
local tab_linki={
["["]="{{!(}}",
["]"]="{{)!}}",
["|"]="{{!}}",
}
local tab_tagow={
["<"]="{{Mniejszy}}",
[">"]="{{Większy}}",
}
local tab_zmienne={
["NAMESPACE"]=true,
["PAGENAME"]=true,
};
local tablica_obiektow_strony_dany_modul={};
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne")
local tekst=stronicowyparser_potrzebne_modul.KodujStroneObiektowa(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul);
tekst=stronicowyparser_potrzebne_modul.SkladajSzablonoweWywolanie(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul,function(szablon,kod,obiekt)
if(obiekt=="TEMPLATE")then
if((mw.ustring.match(szablon,"^{{%s*#invoke:"))or(not mw.ustring.match(szablon,"^{{%s*#%a+:")))then
if(mw.ustring.match(szablon,"|"))then
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
else
local pseudoszablon=mw.ustring.match(szablon,"^{{%s*subst%s*:%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*safesubst%s*:%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*subst%s*:%s*(%a+)%s*}}$")
or mw.ustring.match(szablon,"^{{%s*safesubst%s*:%s*(%a+)%s*}}$")
or mw.ustring.match(szablon,"^{{%s*(%a+)%s*}}$")
if(pseudoszablon)then
if(tab_zmienne[pseudoszablon])then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
return szablon;
end;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
return szablon;
end;
end;
else
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
end;
elseif((obiekt=="LINKW")or(obiekt=="LINKZ"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif(obiekt=="VAR")then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif((obiekt=="NOWIKI")or(obiekt=="PRE")or(obiekt=="MATH"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak] or tab_tagow[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
else
return szablon;
end;
end);
return frame:getParent():preprocess(tekst);
end;
p["WikikodStrony"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
return text;
end;
function p.LuaSubst(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local strona=args[1] or args["strona"];
if(not parametry_modul.CzyTak(strona))then return "(Bład: nazwa strony jest pusta lub nie podana)";end;
local title=mw.title.makeTitle('',strona);
if((not title)or (not title.exists))then return "(Błąd: Strona nie istnieje)";end;
local tekst=title:getContent();
local inkludowany=parametry_modul.CzyTak(args["inkludowana"]);
if(inkludowany)then
tekst,_=mw.ustring.gsub(tekst,"<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>(.-)</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>","");
tekst,_=mw.ustring.gsub(tekst,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.-)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
end;
return tekst;
end;
p["RozwiniętyWikikodStrony"]=function (frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame)
local PobierzParametr=parametry_modul.PobierzParametr(args);
local nazwa=PobierzParametr("Nazwa strony") or PobierzParametr("Nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("Miano przestrzeni nazw") or PobierzParametr("Przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
local bezkluczy={["Nazwa strony"]=true,["Nazwa"]=true,["Miano przestrzeni nazw"]=true,["Przestrzeń"]=true,};
if czy_wyspecjalizowana then
bezkluczy["wyspecjalizowana"]=true;
bezkluczy["nie rozwiń"]=true;
end;
local tab=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,bezkluczy);
local frame2=mw.getCurrentFrame():newChild{title=(parametry_modul.CzyTak(przestrzen)and (przestrzen..":"..nazwa) or nazwa),args=tab};
local czy2=(czy and frame.args);
text=(czy2 and (not parametry_modul.CzyTak(frame.args["nie rozwiń"])) or (not czy2 and true)) and frame2:preprocess(text) or text;
return text;
end;
function p.NowaLinia(frame)
return "\n";
end;
function p.Nowiki(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local PobierzParametr=parametry_modul.PobierzParametr(args);
local tekst=PobierzParametr("tekst") or PobierzParametr(1);
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local h=html_modul.KodHTMLZnaku("#");
local s=html_modul.KodHTMLZnaku(";");
tekst,_=mw.ustring.gsub(tekst,"&#(%d+);",i..h.."%1"..s);
tekst,_=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..s);
local sprawdz_modul=require("Module:Sprawdź");
tekst=sprawdz_modul["UsuńKategorięSprawdzaniaParametrówSzablonu"]{args={[1]=tekst,},}
tekst=frame:callParserFunction('#tag:nowiki',tekst);
return tekst;
end;
function p.FunkcjaLua(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local modul=require("Module:"..(args[1] or args["moduł"]));
if(modul)then
if(modul[asgs[2] or args["nazwa"] or args["funkcja"]])then
local args2=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,{[1]=true,["moduł"]=true,[2]=true,nazwa=true,funkcja=true,["wyspecjalizowana"]=true,})
return modul[asgs[2] or args["nazwa"] or args["funkcja"]](args2);
end;
end;
end;
p["LiczbaBajtówCiąguDoNormy"] = function(frame)
local str=frame.args[1] or frame.args["ciąg"];
local ile=tonumber(frame.args[2] or frame.args["norma"]);
if(not ile)then return #str;end;
if(#str<=ile)then
return #str;
end;
return nil;
end;
p["LiczbaStronJakoPozycjeDanejKategorii"]=function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local kategoria=parametry_modul.CzyTak(args["kategoria"]) and args["kategoria"] or "Category:Przykładowa kategoria";
local kat={
["subcats"]=true,
["files"]=true,
["pages"]=true,
}
local typ=args["typ"] or "all";
typ=kat[args["typ"]] and args["typ"] or "all";
local nazwy_modul=require("Module:Nazwy");
kategoria=nazwy_modul["NAZWASTRONY"](kategoria);
return mw.site.stats.pagesInCategory(kategoria,typ);
end;
return p;
tked754lhkl5v2oar2xp882tls3yfr2
439032
439031
2022-08-29T09:14:22Z
Persino
2851
Scribunto
text/plain
local p={};
p["ParsujWywołanieSzablonu"] = function(wywolanie_szablonu)
local wywolanie_bez_parametrow=mw.ustring.match(wywolanie_szablonu,"^{{[^{}|]-}}$");
if(not wywolanie_bez_parametrow)then
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*|.-}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
local parametry_wywolania_szablonu=mw.ustring.match(wywolanie_szablonu,"{{[^{}|]*|([^{}]*)}}");
return ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu);
else return nil;end;
else
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
return parametry_szablonu;
else return nil;end;
end;
end;
function ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu)
local kawalek_wywolania,dalszy_kawalek_wywolania=mw.ustring.match(parametry_wywolania_szablonu,"^([^|]*)|(.*)$");
if(not kawalek_wywolania)then
kawalek_wywolania=parametry_wywolania_szablonu;
end;
if(not dalszy_kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return parametry_szablonu;
end;
if(kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return ParametrySzablonu(dalszy_kawalek_wywolania,parametry_szablonu);
end;
return nil;
end;
function ZbierzParametrSzablonu(tworzona_tabela, kawalek_wywolania)
local kawalek_wywolania_element_nienazwany=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*$");
if(kawalek_wywolania_element_nienazwany)then
tworzona_tabela[#tworzona_tabela+1]=mw.text.trim(kawalek_wywolania_element_nienazwany);
return tworzona_tabela;
else
local kawalek_wywolania_klucz,kawalek_wywolania_wartosc=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*=%s*([^|{}]-)%s*$");
if((kawalek_wywolania_klucz)and(kawalek_wywolania_wartosc))then
if(not mw.ustring.match(kawalek_wywolania_klucz,"^%s*%d+%s*$"))then
tworzona_tabela[mw.text.trim(kawalek_wywolania_klucz)]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
else
tworzona_tabela[tonumber(mw.text.trim(kawalek_wywolania_klucz))]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
end;
else
return nil;
end;
end;
return nil;
end;
p["PokażSzablon"]=function(szablon, args)
local result = {}
local flags = {}
table.insert(result, mw.text.nowiki("{{"))
if mw.isSubsting() then
table.insert(result, "subst:")
end
table.insert(result, szablon);
if args then
for k, v in pairs(args) do
if (type(k)~="number")then
table.insert(result, "|")
table.insert(result, tostring(k))
table.insert(result, "=")
table.insert(result, mw.text.nowiki(v))
else
table.insert(result, "|")
table.insert(result, mw.text.nowiki(v))
end
end
end
table.insert(result, mw.text.nowiki("}}"))
return table.concat(result)
end;
function p.NazwaSzablonu(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa,_=PobierzParametr();
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa);
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np")
if(nazwa_przestrzeni==nazwy_np_modul.Template)then
return nazwy_modul["NAZWASTRONY"](nazwa);
elseif(nazwa_przestrzeni==nazwy_np_modul.Main)then
return ":"..nazwa;
else
return nazwa;
end;
end;
p["Pierwszy niepusty"]= function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local i=1;
local parametry_modul=require("Module:Parametry");
local liczba_elementow_w_tablicy_args=parametry_modul["LiczbaElementówNumerowanychZPrzedrostkiemLubNieTablicy"](args,"test");
local licznik=1;
while true do
local test=args["test"..i];
local _i=args[i];
local zmienna=test or _i;
local czy_tak=parametry_modul.CzyTak(zmienna);
if(czy_tak)then
return (_i)and _i or "{{{"..i.."}}}";
end;
if(licznik>=liczba_elementow_w_tablicy_args)then return "";end;
if(zmienna)then licznik=licznik+1;end;
i=i+1;
end;
return;
end;
p["PełnaNazwaOpisuModułu"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local pelna_nazwa_strony=PobierzParametr(1) or PobierzParametr("nazwa");
local komunikat = mw.message.new('Scribunto-doc-page-name', '$1');
local zawartosc_komunikatu;
if(komunikat:exists())then
zawartosc_komunikatu=komunikat:plain();
zawartosc_komunikatu=mw.getCurrentFrame():preprocess(zawartosc_komunikatu);
else
zawartosc_komunikatu="Module:%1/opis";
end;
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony0=nazwy_modul["PEŁNANAZWASTRONY"](zawartosc_komunikatu);
local pelna_nazwa_strony2=pelna_nazwa_strony and nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony) or nazwy_modul["PEŁNANAZWASTRONY"]();
local patternopis=mw.ustring.gsub(pelna_nazwa_strony0,"%$1",".-");
if(not mw.ustring.match(pelna_nazwa_strony2,"^"..patternopis.."$"))then
local nazwa_strony=nazwy_modul["NAZWASTRONY"](pelna_nazwa_strony2);
local przetworzona_nazwa_strony,_=mw.ustring.gsub(nazwa_strony,"(%%)","%%%%");
przetworzona_nazwa_strony,_=mw.ustring.gsub(przetworzona_nazwa_strony,"/%s*$","");
local pelna_nazwa_strony_opisu, _=mw.ustring.gsub(zawartosc_komunikatu,"%$1",przetworzona_nazwa_strony)
local pelna_strona_opisu=nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony_opisu);
return pelna_strona_opisu;
else
return pelna_nazwa_strony2;
end;
end;
p["WzórDanejPrzestrzeniNazw"] = function (frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor, _ = mw.ustring.gsub(nazwa,"(.)",function (s) return ((mw.ustring.match(s,"^%a$"))and("["..mw.ustring.upper(s)..mw.ustring.lower(s).."]")or s);end )
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["CzyIstniejeDanaPrzestrzeńNazw"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa_przestrzeni_nazw_lub_jego_identyfikator=PobierzParametr(1) or PobierzParametr("nazwa");
local uchwyt_przestrzeni_nazw;
if(mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*[%+%-]?%d+%s*$"))then
local identyfikator,_=mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*([%+%-]?%d+)%s*$");
uchwyt_przestrzeni_nazw=mw.site.namespaces[tonumber(mw.text.trim(identyfikator))];
else
uchwyt_przestrzeni_nazw=mw.site.namespaces[nazwa_przestrzeni_nazw_lub_jego_identyfikator];
end;
if(uchwyt_przestrzeni_nazw)then
return "tak";
else
return;
end;
end;
p["WzórNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor,_=mw.ustring.gsub(strona,"([%[%]%(%)%+%-%*%?%.%^%$%%'])","%%%1");
wzor,_=mw.ustring.gsub(wzor,"^(.)",function(s)return "["..mw.ustring.upper(s)..mw.ustring.lower(s).."]";end);
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["WzórPełnejNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_strony=nazwy_modul["NAZWASTRONY"](strona);
if(nazwa_przestrzeni~="")then
nazwa_przestrzeni=p["WzórDanejPrzestrzeniNazw"](nazwa_przestrzeni);
end;
nazwa_strony=p["WzórNazwyStrony"](nazwa_strony);
return ((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..nazwa_strony;
end;
p["TekstBezOdwołańDoParametrówWeWzorze"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"%%(%d+)","%%%%%1");
return tekst;
end;
p["PrzekształćWzórDoCzystegoTekstu"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
return tekst;
end;
function p.PoliczZbiory(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame,true);
local liczba_istniejacych_zbiorow=0;
local tabela_uchwytow_stron={};
for _,nazwa_strony in ipairs(args) do
local uchwyt_strony = mw.title.makeTitle('',nazwa_strony);
local tekst_artykulu = uchwyt_strony and uchwyt_strony:getContent() or nil;
local czy_istnieje=tekst_artykulu and tekst_artykulu or (uchwyt_strony and uchwyt_strony.exists or nil);
tabela_uchwytow_stron[#tabela_uchwytow_stron+1]={uchwyt_strony,tekst_artykulu,};
if(czy_istnieje)then
liczba_istniejacych_zbiorow=liczba_istniejacych_zbiorow+1;
end;
end;
return liczba_istniejacych_zbiorow,tabela_uchwytow_stron;
end;
function p.TransformacjaWzoru(ciag)
return mw.ustring.gsub(ciag,"[%^%$%(%)%%%.%[%]%*%+%-%?]","%%%1");
end;
p["WyświetlajKodySpecjalne"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
text=mw.ustring.gsub(text,"&#(%d+);",i..hash.."%1"..sr);
text=mw.ustring.gsub(text,"&(%a+);",i.."%1"..sr);
return text;
end;
function p.Wikikod(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local nazwa_modulu=((parametry_modul["CzyTakCiąg"](przestrzen)) and (przestrzen..":") or "")..(nazwa or "Przykłowa strona");
local stronicowyparser_modul=require("Module:StronicowyParser/DalszeFunkcje");
local tekst=stronicowyparser_modul.LadujZawartoscStrony(nil,nazwa_modulu,nil,false,nil,true);
if(not tekst)then
local blad_modul=require("Module:Błąd");
return blad_modul.error{args={tag="span",tekst="Nie ma takiej strony lub artykulu."}};
end;
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
tekst=mw.ustring.gsub(tekst,"&#(%d+);",i..hash.."%1"..sr);
tekst=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..sr);
local tab_znaki={
["{"]="{{(}}",
["}"]="{{)}}",
["|"]="{{!}}",
["="]="{{=}}";
};
local tab_linki={
["["]="{{!(}}",
["]"]="{{)!}}",
["|"]="{{!}}",
}
local tab_tagow={
["<"]="{{Mniejszy}}",
[">"]="{{Większy}}",
}
local tab_zmienne={
["NAMESPACE"]=true,
["PAGENAME"]=true,
};
local tablica_obiektow_strony_dany_modul={};
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne")
local tekst=stronicowyparser_potrzebne_modul.KodujStroneObiektowa(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul);
tekst=stronicowyparser_potrzebne_modul.SkladajSzablonoweWywolanie(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul,function(szablon,kod,obiekt)
if(obiekt=="TEMPLATE")then
if((mw.ustring.match(szablon,"^{{%s*#invoke:"))or(not mw.ustring.match(szablon,"^{{%s*#%a+:")))then
if(mw.ustring.match(szablon,"|"))then
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
else
local pseudoszablon=mw.ustring.match(szablon,"^{{%s*subst%s*:%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*safesubst%s*:%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*subst%s*:%s*(%a+)%s*}}$")
or mw.ustring.match(szablon,"^{{%s*safesubst%s*:%s*(%a+)%s*}}$")
or mw.ustring.match(szablon,"^{{%s*(%a+)%s*}}$");
if(pseudoszablon)then
if(tab_zmienne[pseudoszablon])then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
return szablon;
end;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
return szablon;
end;
end;
else
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
end;
elseif((obiekt=="LINKW")or(obiekt=="LINKZ"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif(obiekt=="VAR")then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif((obiekt=="NOWIKI")or(obiekt=="PRE")or(obiekt=="MATH"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak] or tab_tagow[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
else
return szablon;
end;
end);
return frame:getParent():preprocess(tekst);
end;
p["WikikodStrony"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
return text;
end;
function p.LuaSubst(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local strona=args[1] or args["strona"];
if(not parametry_modul.CzyTak(strona))then return "(Bład: nazwa strony jest pusta lub nie podana)";end;
local title=mw.title.makeTitle('',strona);
if((not title)or (not title.exists))then return "(Błąd: Strona nie istnieje)";end;
local tekst=title:getContent();
local inkludowany=parametry_modul.CzyTak(args["inkludowana"]);
if(inkludowany)then
tekst,_=mw.ustring.gsub(tekst,"<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>(.-)</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>","");
tekst,_=mw.ustring.gsub(tekst,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.-)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
end;
return tekst;
end;
p["RozwiniętyWikikodStrony"]=function (frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame)
local PobierzParametr=parametry_modul.PobierzParametr(args);
local nazwa=PobierzParametr("Nazwa strony") or PobierzParametr("Nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("Miano przestrzeni nazw") or PobierzParametr("Przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
local bezkluczy={["Nazwa strony"]=true,["Nazwa"]=true,["Miano przestrzeni nazw"]=true,["Przestrzeń"]=true,};
if czy_wyspecjalizowana then
bezkluczy["wyspecjalizowana"]=true;
bezkluczy["nie rozwiń"]=true;
end;
local tab=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,bezkluczy);
local frame2=mw.getCurrentFrame():newChild{title=(parametry_modul.CzyTak(przestrzen)and (przestrzen..":"..nazwa) or nazwa),args=tab};
local czy2=(czy and frame.args);
text=(czy2 and (not parametry_modul.CzyTak(frame.args["nie rozwiń"])) or (not czy2 and true)) and frame2:preprocess(text) or text;
return text;
end;
function p.NowaLinia(frame)
return "\n";
end;
function p.Nowiki(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local PobierzParametr=parametry_modul.PobierzParametr(args);
local tekst=PobierzParametr("tekst") or PobierzParametr(1);
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local h=html_modul.KodHTMLZnaku("#");
local s=html_modul.KodHTMLZnaku(";");
tekst,_=mw.ustring.gsub(tekst,"&#(%d+);",i..h.."%1"..s);
tekst,_=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..s);
local sprawdz_modul=require("Module:Sprawdź");
tekst=sprawdz_modul["UsuńKategorięSprawdzaniaParametrówSzablonu"]{args={[1]=tekst,},}
tekst=frame:callParserFunction('#tag:nowiki',tekst);
return tekst;
end;
function p.FunkcjaLua(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local modul=require("Module:"..(args[1] or args["moduł"]));
if(modul)then
if(modul[asgs[2] or args["nazwa"] or args["funkcja"]])then
local args2=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,{[1]=true,["moduł"]=true,[2]=true,nazwa=true,funkcja=true,["wyspecjalizowana"]=true,})
return modul[asgs[2] or args["nazwa"] or args["funkcja"]](args2);
end;
end;
end;
p["LiczbaBajtówCiąguDoNormy"] = function(frame)
local str=frame.args[1] or frame.args["ciąg"];
local ile=tonumber(frame.args[2] or frame.args["norma"]);
if(not ile)then return #str;end;
if(#str<=ile)then
return #str;
end;
return nil;
end;
p["LiczbaStronJakoPozycjeDanejKategorii"]=function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local kategoria=parametry_modul.CzyTak(args["kategoria"]) and args["kategoria"] or "Category:Przykładowa kategoria";
local kat={
["subcats"]=true,
["files"]=true,
["pages"]=true,
}
local typ=args["typ"] or "all";
typ=kat[args["typ"]] and args["typ"] or "all";
local nazwy_modul=require("Module:Nazwy");
kategoria=nazwy_modul["NAZWASTRONY"](kategoria);
return mw.site.stats.pagesInCategory(kategoria,typ);
end;
return p;
h8efsxzlba0g228umusnlkieag80yne
439033
439032
2022-08-29T09:44:58Z
Persino
2851
Scribunto
text/plain
local p={};
p["ParsujWywołanieSzablonu"] = function(wywolanie_szablonu)
local wywolanie_bez_parametrow=mw.ustring.match(wywolanie_szablonu,"^{{[^{}|]-}}$");
if(not wywolanie_bez_parametrow)then
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*|.-}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
local parametry_wywolania_szablonu=mw.ustring.match(wywolanie_szablonu,"{{[^{}|]*|([^{}]*)}}");
return ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu);
else return nil;end;
else
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
return parametry_szablonu;
else return nil;end;
end;
end;
function ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu)
local kawalek_wywolania,dalszy_kawalek_wywolania=mw.ustring.match(parametry_wywolania_szablonu,"^([^|]*)|(.*)$");
if(not kawalek_wywolania)then
kawalek_wywolania=parametry_wywolania_szablonu;
end;
if(not dalszy_kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return parametry_szablonu;
end;
if(kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return ParametrySzablonu(dalszy_kawalek_wywolania,parametry_szablonu);
end;
return nil;
end;
function ZbierzParametrSzablonu(tworzona_tabela, kawalek_wywolania)
local kawalek_wywolania_element_nienazwany=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*$");
if(kawalek_wywolania_element_nienazwany)then
tworzona_tabela[#tworzona_tabela+1]=mw.text.trim(kawalek_wywolania_element_nienazwany);
return tworzona_tabela;
else
local kawalek_wywolania_klucz,kawalek_wywolania_wartosc=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*=%s*([^|{}]-)%s*$");
if((kawalek_wywolania_klucz)and(kawalek_wywolania_wartosc))then
if(not mw.ustring.match(kawalek_wywolania_klucz,"^%s*%d+%s*$"))then
tworzona_tabela[mw.text.trim(kawalek_wywolania_klucz)]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
else
tworzona_tabela[tonumber(mw.text.trim(kawalek_wywolania_klucz))]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
end;
else
return nil;
end;
end;
return nil;
end;
p["PokażSzablon"]=function(szablon, args)
local result = {}
local flags = {}
table.insert(result, mw.text.nowiki("{{"))
if mw.isSubsting() then
table.insert(result, "subst:")
end
table.insert(result, szablon);
if args then
for k, v in pairs(args) do
if (type(k)~="number")then
table.insert(result, "|")
table.insert(result, tostring(k))
table.insert(result, "=")
table.insert(result, mw.text.nowiki(v))
else
table.insert(result, "|")
table.insert(result, mw.text.nowiki(v))
end
end
end
table.insert(result, mw.text.nowiki("}}"))
return table.concat(result)
end;
function p.NazwaSzablonu(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa,_=PobierzParametr();
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa);
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np")
if(nazwa_przestrzeni==nazwy_np_modul.Template)then
return nazwy_modul["NAZWASTRONY"](nazwa);
elseif(nazwa_przestrzeni==nazwy_np_modul.Main)then
return ":"..nazwa;
else
return nazwa;
end;
end;
p["Pierwszy niepusty"]= function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local i=1;
local parametry_modul=require("Module:Parametry");
local liczba_elementow_w_tablicy_args=parametry_modul["LiczbaElementówNumerowanychZPrzedrostkiemLubNieTablicy"](args,"test");
local licznik=1;
while true do
local test=args["test"..i];
local _i=args[i];
local zmienna=test or _i;
local czy_tak=parametry_modul.CzyTak(zmienna);
if(czy_tak)then
return (_i)and _i or "{{{"..i.."}}}";
end;
if(licznik>=liczba_elementow_w_tablicy_args)then return "";end;
if(zmienna)then licznik=licznik+1;end;
i=i+1;
end;
return;
end;
p["PełnaNazwaOpisuModułu"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local pelna_nazwa_strony=PobierzParametr(1) or PobierzParametr("nazwa");
local komunikat = mw.message.new('Scribunto-doc-page-name', '$1');
local zawartosc_komunikatu;
if(komunikat:exists())then
zawartosc_komunikatu=komunikat:plain();
zawartosc_komunikatu=mw.getCurrentFrame():preprocess(zawartosc_komunikatu);
else
zawartosc_komunikatu="Module:%1/opis";
end;
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony0=nazwy_modul["PEŁNANAZWASTRONY"](zawartosc_komunikatu);
local pelna_nazwa_strony2=pelna_nazwa_strony and nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony) or nazwy_modul["PEŁNANAZWASTRONY"]();
local patternopis=mw.ustring.gsub(pelna_nazwa_strony0,"%$1",".-");
if(not mw.ustring.match(pelna_nazwa_strony2,"^"..patternopis.."$"))then
local nazwa_strony=nazwy_modul["NAZWASTRONY"](pelna_nazwa_strony2);
local przetworzona_nazwa_strony,_=mw.ustring.gsub(nazwa_strony,"(%%)","%%%%");
przetworzona_nazwa_strony,_=mw.ustring.gsub(przetworzona_nazwa_strony,"/%s*$","");
local pelna_nazwa_strony_opisu, _=mw.ustring.gsub(zawartosc_komunikatu,"%$1",przetworzona_nazwa_strony)
local pelna_strona_opisu=nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony_opisu);
return pelna_strona_opisu;
else
return pelna_nazwa_strony2;
end;
end;
p["WzórDanejPrzestrzeniNazw"] = function (frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor, _ = mw.ustring.gsub(nazwa,"(.)",function (s) return ((mw.ustring.match(s,"^%a$"))and("["..mw.ustring.upper(s)..mw.ustring.lower(s).."]")or s);end )
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["CzyIstniejeDanaPrzestrzeńNazw"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa_przestrzeni_nazw_lub_jego_identyfikator=PobierzParametr(1) or PobierzParametr("nazwa");
local uchwyt_przestrzeni_nazw;
if(mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*[%+%-]?%d+%s*$"))then
local identyfikator,_=mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*([%+%-]?%d+)%s*$");
uchwyt_przestrzeni_nazw=mw.site.namespaces[tonumber(mw.text.trim(identyfikator))];
else
uchwyt_przestrzeni_nazw=mw.site.namespaces[nazwa_przestrzeni_nazw_lub_jego_identyfikator];
end;
if(uchwyt_przestrzeni_nazw)then
return "tak";
else
return;
end;
end;
p["WzórNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor,_=mw.ustring.gsub(strona,"([%[%]%(%)%+%-%*%?%.%^%$%%'])","%%%1");
wzor,_=mw.ustring.gsub(wzor,"^(.)",function(s)return "["..mw.ustring.upper(s)..mw.ustring.lower(s).."]";end);
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["WzórPełnejNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_strony=nazwy_modul["NAZWASTRONY"](strona);
if(nazwa_przestrzeni~="")then
nazwa_przestrzeni=p["WzórDanejPrzestrzeniNazw"](nazwa_przestrzeni);
end;
nazwa_strony=p["WzórNazwyStrony"](nazwa_strony);
return ((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..nazwa_strony;
end;
p["TekstBezOdwołańDoParametrówWeWzorze"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"%%(%d+)","%%%%%1");
return tekst;
end;
p["PrzekształćWzórDoCzystegoTekstu"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
return tekst;
end;
function p.PoliczZbiory(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame,true);
local liczba_istniejacych_zbiorow=0;
local tabela_uchwytow_stron={};
for _,nazwa_strony in ipairs(args) do
local uchwyt_strony = mw.title.makeTitle('',nazwa_strony);
local tekst_artykulu = uchwyt_strony and uchwyt_strony:getContent() or nil;
local czy_istnieje=tekst_artykulu and tekst_artykulu or (uchwyt_strony and uchwyt_strony.exists or nil);
tabela_uchwytow_stron[#tabela_uchwytow_stron+1]={uchwyt_strony,tekst_artykulu,};
if(czy_istnieje)then
liczba_istniejacych_zbiorow=liczba_istniejacych_zbiorow+1;
end;
end;
return liczba_istniejacych_zbiorow,tabela_uchwytow_stron;
end;
function p.TransformacjaWzoru(ciag)
return mw.ustring.gsub(ciag,"[%^%$%(%)%%%.%[%]%*%+%-%?]","%%%1");
end;
p["WyświetlajKodySpecjalne"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
text=mw.ustring.gsub(text,"&#(%d+);",i..hash.."%1"..sr);
text=mw.ustring.gsub(text,"&(%a+);",i.."%1"..sr);
return text;
end;
function p.Wikikod(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local nazwa_modulu=((parametry_modul["CzyTakCiąg"](przestrzen)) and (przestrzen..":") or "")..(nazwa or "Przykłowa strona");
local stronicowyparser_modul=require("Module:StronicowyParser/DalszeFunkcje");
local tekst=stronicowyparser_modul.LadujZawartoscStrony(nil,nazwa_modulu,nil,false,nil,true);
if(not tekst)then
local blad_modul=require("Module:Błąd");
return blad_modul.error{args={tag="span",tekst="Nie ma takiej strony lub artykulu."}};
end;
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
tekst=mw.ustring.gsub(tekst,"&#(%d+);",i..hash.."%1"..sr);
tekst=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..sr);
local tab_znaki={
["{"]="{{(}}",
["}"]="{{)}}",
["|"]="{{!}}",
["="]="{{=}}";
};
local tab_linki={
["["]="{{!(}}",
["]"]="{{)!}}",
["|"]="{{!}}",
}
local tab_tagow={
["<"]="{{Mniejszy}}",
[">"]="{{Większy}}",
}
local tab_zmienne={
["NAMESPACE"]=true,
["PAGENAME"]=true,
};
local tablica_obiektow_strony_dany_modul={};
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne")
local tekst=stronicowyparser_potrzebne_modul.KodujStroneObiektowa(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul);
tekst=stronicowyparser_potrzebne_modul.SkladajSzablonoweWywolanie(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul,function(szablon,kod,obiekt)
if(obiekt=="TEMPLATE")then
if((mw.ustring.match(szablon,"^{{%s*#invoke:"))or(not mw.ustring.match(szablon,"^{{%s*#%a+:")))then
if(mw.ustring.match(szablon,"|"))then
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
else
local pseudoszablon=mw.ustring.match(szablon,"^{{%s*subst%s*:%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*safesubst%s*:%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*subst%s*:%s*(%a+)%s*}}$")
or mw.ustring.match(szablon,"^{{%s*safesubst%s*:%s*(%a+)%s*}}$")
or mw.ustring.match(szablon,"^{{%s*(%a+)%s*}}$");
if(pseudoszablon)then
if(tab_zmienne[pseudoszablon])then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
return szablon;
end;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
return szablon;
end;
end;
else
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
end;
elseif((obiekt=="LINKW")or(obiekt=="LINKZ"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif(obiekt=="VAR")then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif((obiekt=="NOWIKI")or(obiekt=="PRE")or(obiekt=="MATH"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak] or tab_tagow[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
else
return szablon;
end;
end);
return frame:getParent():preprocess(tekst);
end;
p["WikikodStrony"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
return text;
end;
function p.LuaSubst(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local strona=args[1] or args["strona"];
if(not parametry_modul.CzyTak(strona))then return "(Bład: nazwa strony jest pusta lub nie podana)";end;
local title=mw.title.makeTitle('',strona);
if((not title)or (not title.exists))then return "(Błąd: Strona nie istnieje)";end;
local tekst=title:getContent();
local inkludowany=parametry_modul.CzyTak(args["inkludowana"]);
if(inkludowany)then
tekst,_=mw.ustring.gsub(tekst,"<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>(.-)</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>","");
tekst,_=mw.ustring.gsub(tekst,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.-)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
end;
return tekst;
end;
function p.NowaLinia(frame)
return "\n";
end;
function p.Nowiki(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local PobierzParametr=parametry_modul.PobierzParametr(args);
local tekst=PobierzParametr("tekst") or PobierzParametr(1);
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local h=html_modul.KodHTMLZnaku("#");
local s=html_modul.KodHTMLZnaku(";");
tekst,_=mw.ustring.gsub(tekst,"&#(%d+);",i..h.."%1"..s);
tekst,_=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..s);
local sprawdz_modul=require("Module:Sprawdź");
tekst=sprawdz_modul["UsuńKategorięSprawdzaniaParametrówSzablonu"]{args={[1]=tekst,},}
tekst=frame:callParserFunction('#tag:nowiki',tekst);
return tekst;
end;
function p.FunkcjaLua(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local modul=require("Module:"..(args[1] or args["moduł"]));
if(modul)then
if(modul[asgs[2] or args["nazwa"] or args["funkcja"]])then
local args2=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,{[1]=true,["moduł"]=true,[2]=true,nazwa=true,funkcja=true,["wyspecjalizowana"]=true,})
return modul[asgs[2] or args["nazwa"] or args["funkcja"]](args2);
end;
end;
end;
p["LiczbaBajtówCiąguDoNormy"] = function(frame)
local str=frame.args[1] or frame.args["ciąg"];
local ile=tonumber(frame.args[2] or frame.args["norma"]);
if(not ile)then return #str;end;
if(#str<=ile)then
return #str;
end;
return nil;
end;
p["LiczbaStronJakoPozycjeDanejKategorii"]=function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local kategoria=parametry_modul.CzyTak(args["kategoria"]) and args["kategoria"] or "Category:Przykładowa kategoria";
local kat={
["subcats"]=true,
["files"]=true,
["pages"]=true,
}
local typ=args["typ"] or "all";
typ=kat[args["typ"]] and args["typ"] or "all";
local nazwy_modul=require("Module:Nazwy");
kategoria=nazwy_modul["NAZWASTRONY"](kategoria);
return mw.site.stats.pagesInCategory(kategoria,typ);
end;
return p;
cjeyrteggm0ngcwthsavpsw97mocjed
439034
439033
2022-08-29T09:58:57Z
Persino
2851
Scribunto
text/plain
local p={};
p["ParsujWywołanieSzablonu"] = function(wywolanie_szablonu)
local wywolanie_bez_parametrow=mw.ustring.match(wywolanie_szablonu,"^{{[^{}|]-}}$");
if(not wywolanie_bez_parametrow)then
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*|.-}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
local parametry_wywolania_szablonu=mw.ustring.match(wywolanie_szablonu,"{{[^{}|]*|([^{}]*)}}");
return ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu);
else return nil;end;
else
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
return parametry_szablonu;
else return nil;end;
end;
end;
function ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu)
local kawalek_wywolania,dalszy_kawalek_wywolania=mw.ustring.match(parametry_wywolania_szablonu,"^([^|]*)|(.*)$");
if(not kawalek_wywolania)then
kawalek_wywolania=parametry_wywolania_szablonu;
end;
if(not dalszy_kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return parametry_szablonu;
end;
if(kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return ParametrySzablonu(dalszy_kawalek_wywolania,parametry_szablonu);
end;
return nil;
end;
function ZbierzParametrSzablonu(tworzona_tabela, kawalek_wywolania)
local kawalek_wywolania_element_nienazwany=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*$");
if(kawalek_wywolania_element_nienazwany)then
tworzona_tabela[#tworzona_tabela+1]=mw.text.trim(kawalek_wywolania_element_nienazwany);
return tworzona_tabela;
else
local kawalek_wywolania_klucz,kawalek_wywolania_wartosc=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*=%s*([^|{}]-)%s*$");
if((kawalek_wywolania_klucz)and(kawalek_wywolania_wartosc))then
if(not mw.ustring.match(kawalek_wywolania_klucz,"^%s*%d+%s*$"))then
tworzona_tabela[mw.text.trim(kawalek_wywolania_klucz)]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
else
tworzona_tabela[tonumber(mw.text.trim(kawalek_wywolania_klucz))]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
end;
else
return nil;
end;
end;
return nil;
end;
p["PokażSzablon"]=function(szablon, args)
local result = {}
local flags = {}
table.insert(result, mw.text.nowiki("{{"))
if mw.isSubsting() then
table.insert(result, "subst:")
end
table.insert(result, szablon);
if args then
for k, v in pairs(args) do
if (type(k)~="number")then
table.insert(result, "|")
table.insert(result, tostring(k))
table.insert(result, "=")
table.insert(result, mw.text.nowiki(v))
else
table.insert(result, "|")
table.insert(result, mw.text.nowiki(v))
end
end
end
table.insert(result, mw.text.nowiki("}}"))
return table.concat(result)
end;
function p.NazwaSzablonu(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa,_=PobierzParametr();
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa);
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np")
if(nazwa_przestrzeni==nazwy_np_modul.Template)then
return nazwy_modul["NAZWASTRONY"](nazwa);
elseif(nazwa_przestrzeni==nazwy_np_modul.Main)then
return ":"..nazwa;
else
return nazwa;
end;
end;
p["Pierwszy niepusty"]= function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local i=1;
local parametry_modul=require("Module:Parametry");
local liczba_elementow_w_tablicy_args=parametry_modul["LiczbaElementówNumerowanychZPrzedrostkiemLubNieTablicy"](args,"test");
local licznik=1;
while true do
local test=args["test"..i];
local _i=args[i];
local zmienna=test or _i;
local czy_tak=parametry_modul.CzyTak(zmienna);
if(czy_tak)then
return (_i)and _i or "{{{"..i.."}}}";
end;
if(licznik>=liczba_elementow_w_tablicy_args)then return "";end;
if(zmienna)then licznik=licznik+1;end;
i=i+1;
end;
return;
end;
p["PełnaNazwaOpisuModułu"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local pelna_nazwa_strony=PobierzParametr(1) or PobierzParametr("nazwa");
local komunikat = mw.message.new('Scribunto-doc-page-name', '$1');
local zawartosc_komunikatu;
if(komunikat:exists())then
zawartosc_komunikatu=komunikat:plain();
zawartosc_komunikatu=mw.getCurrentFrame():preprocess(zawartosc_komunikatu);
else
zawartosc_komunikatu="Module:%1/opis";
end;
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony0=nazwy_modul["PEŁNANAZWASTRONY"](zawartosc_komunikatu);
local pelna_nazwa_strony2=pelna_nazwa_strony and nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony) or nazwy_modul["PEŁNANAZWASTRONY"]();
local patternopis=mw.ustring.gsub(pelna_nazwa_strony0,"%$1",".-");
if(not mw.ustring.match(pelna_nazwa_strony2,"^"..patternopis.."$"))then
local nazwa_strony=nazwy_modul["NAZWASTRONY"](pelna_nazwa_strony2);
local przetworzona_nazwa_strony,_=mw.ustring.gsub(nazwa_strony,"(%%)","%%%%");
przetworzona_nazwa_strony,_=mw.ustring.gsub(przetworzona_nazwa_strony,"/%s*$","");
local pelna_nazwa_strony_opisu, _=mw.ustring.gsub(zawartosc_komunikatu,"%$1",przetworzona_nazwa_strony)
local pelna_strona_opisu=nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony_opisu);
return pelna_strona_opisu;
else
return pelna_nazwa_strony2;
end;
end;
p["WzórDanejPrzestrzeniNazw"] = function (frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor, _ = mw.ustring.gsub(nazwa,"(.)",function (s) return ((mw.ustring.match(s,"^%a$"))and("["..mw.ustring.upper(s)..mw.ustring.lower(s).."]")or s);end )
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["CzyIstniejeDanaPrzestrzeńNazw"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa_przestrzeni_nazw_lub_jego_identyfikator=PobierzParametr(1) or PobierzParametr("nazwa");
local uchwyt_przestrzeni_nazw;
if(mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*[%+%-]?%d+%s*$"))then
local identyfikator,_=mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*([%+%-]?%d+)%s*$");
uchwyt_przestrzeni_nazw=mw.site.namespaces[tonumber(mw.text.trim(identyfikator))];
else
uchwyt_przestrzeni_nazw=mw.site.namespaces[nazwa_przestrzeni_nazw_lub_jego_identyfikator];
end;
if(uchwyt_przestrzeni_nazw)then
return "tak";
else
return;
end;
end;
p["WzórNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor,_=mw.ustring.gsub(strona,"([%[%]%(%)%+%-%*%?%.%^%$%%'])","%%%1");
wzor,_=mw.ustring.gsub(wzor,"^(.)",function(s)return "["..mw.ustring.upper(s)..mw.ustring.lower(s).."]";end);
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["WzórPełnejNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_strony=nazwy_modul["NAZWASTRONY"](strona);
if(nazwa_przestrzeni~="")then
nazwa_przestrzeni=p["WzórDanejPrzestrzeniNazw"](nazwa_przestrzeni);
end;
nazwa_strony=p["WzórNazwyStrony"](nazwa_strony);
return ((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..nazwa_strony;
end;
p["TekstBezOdwołańDoParametrówWeWzorze"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"%%(%d+)","%%%%%1");
return tekst;
end;
p["PrzekształćWzórDoCzystegoTekstu"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
return tekst;
end;
function p.PoliczZbiory(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame,true);
local liczba_istniejacych_zbiorow=0;
local tabela_uchwytow_stron={};
for _,nazwa_strony in ipairs(args) do
local uchwyt_strony = mw.title.makeTitle('',nazwa_strony);
local tekst_artykulu = uchwyt_strony and uchwyt_strony:getContent() or nil;
local czy_istnieje=tekst_artykulu and tekst_artykulu or (uchwyt_strony and uchwyt_strony.exists or nil);
tabela_uchwytow_stron[#tabela_uchwytow_stron+1]={uchwyt_strony,tekst_artykulu,};
if(czy_istnieje)then
liczba_istniejacych_zbiorow=liczba_istniejacych_zbiorow+1;
end;
end;
return liczba_istniejacych_zbiorow,tabela_uchwytow_stron;
end;
function p.TransformacjaWzoru(ciag)
return mw.ustring.gsub(ciag,"[%^%$%(%)%%%.%[%]%*%+%-%?]","%%%1");
end;
p["WyświetlajKodySpecjalne"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
text=mw.ustring.gsub(text,"&#(%d+);",i..hash.."%1"..sr);
text=mw.ustring.gsub(text,"&(%a+);",i.."%1"..sr);
return text;
end;
function p.Wikikod(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local nazwa_modulu=((parametry_modul["CzyTakCiąg"](przestrzen)) and (przestrzen..":") or "")..(nazwa or "Przykłowa strona");
local stronicowyparser_modul=require("Module:StronicowyParser/DalszeFunkcje");
local tekst=stronicowyparser_modul.LadujZawartoscStrony(nil,nazwa_modulu,nil,false,nil,true);
if(not tekst)then
local blad_modul=require("Module:Błąd");
return blad_modul.error{args={tag="span",tekst="Nie ma takiej strony lub artykulu."}};
end;
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
tekst=mw.ustring.gsub(tekst,"&#(%d+);",i..hash.."%1"..sr);
tekst=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..sr);
local tab_znaki={
["{"]="{{(}}",
["}"]="{{)}}",
["|"]="{{!}}",
["="]="{{=}}";
};
local tab_linki={
["["]="{{!(}}",
["]"]="{{)!}}",
["|"]="{{!}}",
}
local tab_tagow={
["<"]="{{Mniejszy}}",
[">"]="{{Większy}}",
}
local tab_zmienne={
["NAMESPACE"]=true,
["PAGENAME"]=true,
};
local tablica_obiektow_strony_dany_modul={};
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne")
local tekst=stronicowyparser_potrzebne_modul.KodujStroneObiektowa(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul);
tekst=stronicowyparser_potrzebne_modul.SkladajSzablonoweWywolanie(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul,function(szablon,kod,obiekt)
if(obiekt=="TEMPLATE")then
if((mw.ustring.match(szablon,"^{{%s*#invoke:"))or(not mw.ustring.match(szablon,"^{{%s*#%a+:")))then
if(mw.ustring.match(szablon,"|"))then
if(mw.ustring.match(szablon,"^{{[^|]*"..stronicowyparser_potrzebne_modul.OgolnyWzor(nil,"(%a+)").."[^|]*|"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
else
if(mw.ustring.match(szablon,stronicowyparser_potrzebne_modul.OgolnyWzor(nil,"(%a+)")))then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
end;
local pseudoszablon=mw.ustring.match(szablon,"^{{%s*subst%s*:%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*safesubst%s*:%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*subst%s*:%s*(%a+)%s*}}$")
or mw.ustring.match(szablon,"^{{%s*safesubst%s*:%s*(%a+)%s*}}$")
or mw.ustring.match(szablon,"^{{%s*(%a+)%s*}}$");
if(pseudoszablon)then
if(tab_zmienne[pseudoszablon])then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
return szablon;
end;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
return szablon;
end;
end;
else
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
end;
elseif((obiekt=="LINKW")or(obiekt=="LINKZ"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif(obiekt=="VAR")then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif((obiekt=="NOWIKI")or(obiekt=="PRE")or(obiekt=="MATH"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak] or tab_tagow[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
else
return szablon;
end;
end);
return frame:getParent():preprocess(tekst);
end;
p["WikikodStrony"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
return text;
end;
function p.LuaSubst(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local strona=args[1] or args["strona"];
if(not parametry_modul.CzyTak(strona))then return "(Bład: nazwa strony jest pusta lub nie podana)";end;
local title=mw.title.makeTitle('',strona);
if((not title)or (not title.exists))then return "(Błąd: Strona nie istnieje)";end;
local tekst=title:getContent();
local inkludowany=parametry_modul.CzyTak(args["inkludowana"]);
if(inkludowany)then
tekst,_=mw.ustring.gsub(tekst,"<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>(.-)</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>","");
tekst,_=mw.ustring.gsub(tekst,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.-)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
end;
return tekst;
end;
function p.NowaLinia(frame)
return "\n";
end;
function p.Nowiki(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local PobierzParametr=parametry_modul.PobierzParametr(args);
local tekst=PobierzParametr("tekst") or PobierzParametr(1);
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local h=html_modul.KodHTMLZnaku("#");
local s=html_modul.KodHTMLZnaku(";");
tekst,_=mw.ustring.gsub(tekst,"&#(%d+);",i..h.."%1"..s);
tekst,_=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..s);
local sprawdz_modul=require("Module:Sprawdź");
tekst=sprawdz_modul["UsuńKategorięSprawdzaniaParametrówSzablonu"]{args={[1]=tekst,},}
tekst=frame:callParserFunction('#tag:nowiki',tekst);
return tekst;
end;
function p.FunkcjaLua(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local modul=require("Module:"..(args[1] or args["moduł"]));
if(modul)then
if(modul[asgs[2] or args["nazwa"] or args["funkcja"]])then
local args2=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,{[1]=true,["moduł"]=true,[2]=true,nazwa=true,funkcja=true,["wyspecjalizowana"]=true,})
return modul[asgs[2] or args["nazwa"] or args["funkcja"]](args2);
end;
end;
end;
p["LiczbaBajtówCiąguDoNormy"] = function(frame)
local str=frame.args[1] or frame.args["ciąg"];
local ile=tonumber(frame.args[2] or frame.args["norma"]);
if(not ile)then return #str;end;
if(#str<=ile)then
return #str;
end;
return nil;
end;
p["LiczbaStronJakoPozycjeDanejKategorii"]=function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local kategoria=parametry_modul.CzyTak(args["kategoria"]) and args["kategoria"] or "Category:Przykładowa kategoria";
local kat={
["subcats"]=true,
["files"]=true,
["pages"]=true,
}
local typ=args["typ"] or "all";
typ=kat[args["typ"]] and args["typ"] or "all";
local nazwy_modul=require("Module:Nazwy");
kategoria=nazwy_modul["NAZWASTRONY"](kategoria);
return mw.site.stats.pagesInCategory(kategoria,typ);
end;
return p;
8w1oidcr317l9oiy42xvidnyokyuwm3
439039
439034
2022-08-29T10:45:39Z
Persino
2851
Scribunto
text/plain
local p={};
p["ParsujWywołanieSzablonu"] = function(wywolanie_szablonu)
local wywolanie_bez_parametrow=mw.ustring.match(wywolanie_szablonu,"^{{[^{}|]-}}$");
if(not wywolanie_bez_parametrow)then
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*|.-}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
local parametry_wywolania_szablonu=mw.ustring.match(wywolanie_szablonu,"{{[^{}|]*|([^{}]*)}}");
return ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu);
else return nil;end;
else
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
return parametry_szablonu;
else return nil;end;
end;
end;
function ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu)
local kawalek_wywolania,dalszy_kawalek_wywolania=mw.ustring.match(parametry_wywolania_szablonu,"^([^|]*)|(.*)$");
if(not kawalek_wywolania)then
kawalek_wywolania=parametry_wywolania_szablonu;
end;
if(not dalszy_kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return parametry_szablonu;
end;
if(kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return ParametrySzablonu(dalszy_kawalek_wywolania,parametry_szablonu);
end;
return nil;
end;
function ZbierzParametrSzablonu(tworzona_tabela, kawalek_wywolania)
local kawalek_wywolania_element_nienazwany=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*$");
if(kawalek_wywolania_element_nienazwany)then
tworzona_tabela[#tworzona_tabela+1]=mw.text.trim(kawalek_wywolania_element_nienazwany);
return tworzona_tabela;
else
local kawalek_wywolania_klucz,kawalek_wywolania_wartosc=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*=%s*([^|{}]-)%s*$");
if((kawalek_wywolania_klucz)and(kawalek_wywolania_wartosc))then
if(not mw.ustring.match(kawalek_wywolania_klucz,"^%s*%d+%s*$"))then
tworzona_tabela[mw.text.trim(kawalek_wywolania_klucz)]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
else
tworzona_tabela[tonumber(mw.text.trim(kawalek_wywolania_klucz))]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
end;
else
return nil;
end;
end;
return nil;
end;
p["PokażSzablon"]=function(szablon, args)
local result = {}
local flags = {}
table.insert(result, mw.text.nowiki("{{"))
if mw.isSubsting() then
table.insert(result, "subst:")
end
table.insert(result, szablon);
if args then
for k, v in pairs(args) do
if (type(k)~="number")then
table.insert(result, "|")
table.insert(result, tostring(k))
table.insert(result, "=")
table.insert(result, mw.text.nowiki(v))
else
table.insert(result, "|")
table.insert(result, mw.text.nowiki(v))
end
end
end
table.insert(result, mw.text.nowiki("}}"))
return table.concat(result)
end;
function p.NazwaSzablonu(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa,_=PobierzParametr();
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa);
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np")
if(nazwa_przestrzeni==nazwy_np_modul.Template)then
return nazwy_modul["NAZWASTRONY"](nazwa);
elseif(nazwa_przestrzeni==nazwy_np_modul.Main)then
return ":"..nazwa;
else
return nazwa;
end;
end;
p["Pierwszy niepusty"]= function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local i=1;
local parametry_modul=require("Module:Parametry");
local liczba_elementow_w_tablicy_args=parametry_modul["LiczbaElementówNumerowanychZPrzedrostkiemLubNieTablicy"](args,"test");
local licznik=1;
while true do
local test=args["test"..i];
local _i=args[i];
local zmienna=test or _i;
local czy_tak=parametry_modul.CzyTak(zmienna);
if(czy_tak)then
return (_i)and _i or "{{{"..i.."}}}";
end;
if(licznik>=liczba_elementow_w_tablicy_args)then return "";end;
if(zmienna)then licznik=licznik+1;end;
i=i+1;
end;
return;
end;
p["PełnaNazwaOpisuModułu"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local pelna_nazwa_strony=PobierzParametr(1) or PobierzParametr("nazwa");
local komunikat = mw.message.new('Scribunto-doc-page-name', '$1');
local zawartosc_komunikatu;
if(komunikat:exists())then
zawartosc_komunikatu=komunikat:plain();
zawartosc_komunikatu=mw.getCurrentFrame():preprocess(zawartosc_komunikatu);
else
zawartosc_komunikatu="Module:%1/opis";
end;
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony0=nazwy_modul["PEŁNANAZWASTRONY"](zawartosc_komunikatu);
local pelna_nazwa_strony2=pelna_nazwa_strony and nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony) or nazwy_modul["PEŁNANAZWASTRONY"]();
local patternopis=mw.ustring.gsub(pelna_nazwa_strony0,"%$1",".-");
if(not mw.ustring.match(pelna_nazwa_strony2,"^"..patternopis.."$"))then
local nazwa_strony=nazwy_modul["NAZWASTRONY"](pelna_nazwa_strony2);
local przetworzona_nazwa_strony,_=mw.ustring.gsub(nazwa_strony,"(%%)","%%%%");
przetworzona_nazwa_strony,_=mw.ustring.gsub(przetworzona_nazwa_strony,"/%s*$","");
local pelna_nazwa_strony_opisu, _=mw.ustring.gsub(zawartosc_komunikatu,"%$1",przetworzona_nazwa_strony)
local pelna_strona_opisu=nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony_opisu);
return pelna_strona_opisu;
else
return pelna_nazwa_strony2;
end;
end;
p["WzórDanejPrzestrzeniNazw"] = function (frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor, _ = mw.ustring.gsub(nazwa,"(.)",function (s) return ((mw.ustring.match(s,"^%a$"))and("["..mw.ustring.upper(s)..mw.ustring.lower(s).."]")or s);end )
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["CzyIstniejeDanaPrzestrzeńNazw"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa_przestrzeni_nazw_lub_jego_identyfikator=PobierzParametr(1) or PobierzParametr("nazwa");
local uchwyt_przestrzeni_nazw;
if(mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*[%+%-]?%d+%s*$"))then
local identyfikator,_=mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*([%+%-]?%d+)%s*$");
uchwyt_przestrzeni_nazw=mw.site.namespaces[tonumber(mw.text.trim(identyfikator))];
else
uchwyt_przestrzeni_nazw=mw.site.namespaces[nazwa_przestrzeni_nazw_lub_jego_identyfikator];
end;
if(uchwyt_przestrzeni_nazw)then
return "tak";
else
return;
end;
end;
p["WzórNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor,_=mw.ustring.gsub(strona,"([%[%]%(%)%+%-%*%?%.%^%$%%'])","%%%1");
wzor,_=mw.ustring.gsub(wzor,"^(.)",function(s)return "["..mw.ustring.upper(s)..mw.ustring.lower(s).."]";end);
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["WzórPełnejNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_strony=nazwy_modul["NAZWASTRONY"](strona);
if(nazwa_przestrzeni~="")then
nazwa_przestrzeni=p["WzórDanejPrzestrzeniNazw"](nazwa_przestrzeni);
end;
nazwa_strony=p["WzórNazwyStrony"](nazwa_strony);
return ((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..nazwa_strony;
end;
p["TekstBezOdwołańDoParametrówWeWzorze"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"%%(%d+)","%%%%%1");
return tekst;
end;
p["PrzekształćWzórDoCzystegoTekstu"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
return tekst;
end;
function p.PoliczZbiory(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame,true);
local liczba_istniejacych_zbiorow=0;
local tabela_uchwytow_stron={};
for _,nazwa_strony in ipairs(args) do
local uchwyt_strony = mw.title.makeTitle('',nazwa_strony);
local tekst_artykulu = uchwyt_strony and uchwyt_strony:getContent() or nil;
local czy_istnieje=tekst_artykulu and tekst_artykulu or (uchwyt_strony and uchwyt_strony.exists or nil);
tabela_uchwytow_stron[#tabela_uchwytow_stron+1]={uchwyt_strony,tekst_artykulu,};
if(czy_istnieje)then
liczba_istniejacych_zbiorow=liczba_istniejacych_zbiorow+1;
end;
end;
return liczba_istniejacych_zbiorow,tabela_uchwytow_stron;
end;
function p.TransformacjaWzoru(ciag)
return mw.ustring.gsub(ciag,"[%^%$%(%)%%%.%[%]%*%+%-%?]","%%%1");
end;
p["WyświetlajKodySpecjalne"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
text=mw.ustring.gsub(text,"&#(%d+);",i..hash.."%1"..sr);
text=mw.ustring.gsub(text,"&(%a+);",i.."%1"..sr);
return text;
end;
function p.Wikikod(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local nazwa_modulu=((parametry_modul["CzyTakCiąg"](przestrzen)) and (przestrzen..":") or "")..(nazwa or "Przykłowa strona");
local stronicowyparser_modul=require("Module:StronicowyParser/DalszeFunkcje");
local tekst=stronicowyparser_modul.LadujZawartoscStrony(nil,nazwa_modulu,nil,false,nil,true);
if(not tekst)then
local blad_modul=require("Module:Błąd");
return blad_modul.error{args={tag="span",tekst="Nie ma takiej strony lub artykulu."}};
end;
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
tekst=mw.ustring.gsub(tekst,"&#(%d+);",i..hash.."%1"..sr);
tekst=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..sr);
local tab_znaki={
["{"]="{{(}}",
["}"]="{{)}}",
["|"]="{{!}}",
["="]="{{=}}";
};
local tab_linki={
["["]="{{!(}}",
["]"]="{{)!}}",
["|"]="{{!}}",
}
local tab_tagow={
["<"]="{{Mniejszy}}",
[">"]="{{Większy}}",
}
local tab_zmienne={
["NAMESPACE"]=true,
["PAGENAME"]=true,
};
local tablica_obiektow_strony_dany_modul={};
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne")
local tekst=stronicowyparser_potrzebne_modul.KodujStroneObiektowa(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul);
tekst=stronicowyparser_potrzebne_modul.SkladajSzablonoweWywolanie(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul,function(szablon,kod,obiekt)
if(obiekt=="TEMPLATE")then
if((mw.ustring.match(szablon,"^{{%s*#invoke:"))or(not mw.ustring.match(szablon,"^{{%s*#%a+:")))then
if(mw.ustring.match(szablon,"|"))then
if(mw.ustring.match(szablon,"^{{[^|]*"..stronicowyparser_potrzebne_modul.OgolnyWzor(nil,"(%a+)").."[^|]*|"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
else
if(mw.ustring.match(szablon,stronicowyparser_potrzebne_modul.OgolnyWzor(nil,"(%a+)")))then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
end;
local pseudoszablon=mw.ustring.match(szablon,"^{{%s*subst%s*:%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*safesubst%s*:%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*subst%s*:%s*(%a+)%s*}}$")
or mw.ustring.match(szablon,"^{{%s*safesubst%s*:%s*(%a+)%s*}}$")
or mw.ustring.match(szablon,"^{{%s*(%a+)%s*}}$");
if(pseudoszablon)then
if(tab_zmienne[pseudoszablon])then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
return szablon;
end;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
return szablon;
end;
end;
else
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
end;
elseif((obiekt=="LINKW")or(obiekt=="LINKZ"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif(obiekt=="VAR")then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif((obiekt=="NOWIKI")or(obiekt=="PRE")or(obiekt=="MATH"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak] or tab_tagow[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
else
return szablon;
end;
end);
return frame:getParent():preprocess(tekst);
end;
p["WikikodStrony"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
return text;
end;
function p.LuaSubst(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local strona=args[1] or args["strona"];
if(not parametry_modul.CzyTak(strona))then return "(Bład: nazwa strony jest pusta lub nie podana)";end;
local title=mw.title.makeTitle('',strona);
if((not title)or (not title.exists))then return "(Błąd: Strona nie istnieje)";end;
local tekst=title:getContent();
local inkludowany=parametry_modul.CzyTak(args["inkludowana"]);
if(inkludowany)then
tekst,_=mw.ustring.gsub(tekst,"<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>(.-)</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>","");
tekst,_=mw.ustring.gsub(tekst,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.-)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
end;
return tekst;
end;
function p.NowaLinia(frame)
return "\n";
end;
function p.Nowiki(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local PobierzParametr=parametry_modul.PobierzParametr(args);
local tekst=PobierzParametr("tekst") or PobierzParametr(1);
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local h=html_modul.KodHTMLZnaku("#");
local s=html_modul.KodHTMLZnaku(";");
tekst,_=mw.ustring.gsub(tekst,"&#(%d+);",i..h.."%1"..s);
tekst,_=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..s);
local sprawdz_modul=require("Module:Sprawdź");
tekst=sprawdz_modul["UsuńKategorięSprawdzaniaParametrówSzablonu"]{args={[1]=tekst,},}
tekst=frame:callParserFunction('#tag:nowiki',tekst);
return tekst;
end;
function p.FunkcjaLua(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local modul=require("Module:"..(args[1] or args["moduł"]));
if(modul)then
if(modul[asgs[2] or args["nazwa"] or args["funkcja"]])then
local args2=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,{[1]=true,["moduł"]=true,[2]=true,nazwa=true,funkcja=true,["wyspecjalizowana"]=true,})
return modul[asgs[2] or args["nazwa"] or args["funkcja"]](args2);
end;
end;
end;
p["RozwińSzablonWzględemPodanychParametrów"]=function (frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame)
local PobierzParametr=parametry_modul.PobierzParametr(args);
local nazwa=PobierzParametr("Nazwa strony") or PobierzParametr("Nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("Miano przestrzeni nazw") or PobierzParametr("Przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
local bezkluczy={["Nazwa strony"]=true,["Nazwa"]=true,["Miano przestrzeni nazw"]=true,["Przestrzeń"]=true,};
if czy_wyspecjalizowana then
bezkluczy["wyspecjalizowana"]=true;
bezkluczy["nie rozwiń"]=true;
end;
local tab=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,bezkluczy);
local frame2=mw.getCurrentFrame():newChild{title=(parametry_modul.CzyTak(przestrzen)and (przestrzen..":"..nazwa) or nazwa),args=tab};
text=parametry_modul.CzyTak(frame.args["nie rozwiń"]) and text or frame2:preprocess(text);
return text;
end;
p["LiczbaBajtówCiąguDoNormy"] = function(frame)
local str=frame.args[1] or frame.args["ciąg"];
local ile=tonumber(frame.args[2] or frame.args["norma"]);
if(not ile)then return #str;end;
if(#str<=ile)then
return #str;
end;
return nil;
end;
p["LiczbaStronJakoPozycjeDanejKategorii"]=function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local kategoria=parametry_modul.CzyTak(args["kategoria"]) and args["kategoria"] or "Category:Przykładowa kategoria";
local kat={
["subcats"]=true,
["files"]=true,
["pages"]=true,
}
local typ=args["typ"] or "all";
typ=kat[args["typ"]] and args["typ"] or "all";
local nazwy_modul=require("Module:Nazwy");
kategoria=nazwy_modul["NAZWASTRONY"](kategoria);
return mw.site.stats.pagesInCategory(kategoria,typ);
end;
return p;
t2s4n1hj8o7lho5sq8kc7j857776iw5
439041
439039
2022-08-29T10:49:27Z
Persino
2851
Scribunto
text/plain
local p={};
p["ParsujWywołanieSzablonu"] = function(wywolanie_szablonu)
local wywolanie_bez_parametrow=mw.ustring.match(wywolanie_szablonu,"^{{[^{}|]-}}$");
if(not wywolanie_bez_parametrow)then
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*|.-}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
local parametry_wywolania_szablonu=mw.ustring.match(wywolanie_szablonu,"{{[^{}|]*|([^{}]*)}}");
return ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu);
else return nil;end;
else
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
return parametry_szablonu;
else return nil;end;
end;
end;
function ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu)
local kawalek_wywolania,dalszy_kawalek_wywolania=mw.ustring.match(parametry_wywolania_szablonu,"^([^|]*)|(.*)$");
if(not kawalek_wywolania)then
kawalek_wywolania=parametry_wywolania_szablonu;
end;
if(not dalszy_kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return parametry_szablonu;
end;
if(kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return ParametrySzablonu(dalszy_kawalek_wywolania,parametry_szablonu);
end;
return nil;
end;
function ZbierzParametrSzablonu(tworzona_tabela, kawalek_wywolania)
local kawalek_wywolania_element_nienazwany=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*$");
if(kawalek_wywolania_element_nienazwany)then
tworzona_tabela[#tworzona_tabela+1]=mw.text.trim(kawalek_wywolania_element_nienazwany);
return tworzona_tabela;
else
local kawalek_wywolania_klucz,kawalek_wywolania_wartosc=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*=%s*([^|{}]-)%s*$");
if((kawalek_wywolania_klucz)and(kawalek_wywolania_wartosc))then
if(not mw.ustring.match(kawalek_wywolania_klucz,"^%s*%d+%s*$"))then
tworzona_tabela[mw.text.trim(kawalek_wywolania_klucz)]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
else
tworzona_tabela[tonumber(mw.text.trim(kawalek_wywolania_klucz))]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
end;
else
return nil;
end;
end;
return nil;
end;
p["PokażSzablon"]=function(szablon, args)
local result = {}
local flags = {}
table.insert(result, mw.text.nowiki("{{"))
if mw.isSubsting() then
table.insert(result, "subst:")
end
table.insert(result, szablon);
if args then
for k, v in pairs(args) do
if (type(k)~="number")then
table.insert(result, "|")
table.insert(result, tostring(k))
table.insert(result, "=")
table.insert(result, mw.text.nowiki(v))
else
table.insert(result, "|")
table.insert(result, mw.text.nowiki(v))
end
end
end
table.insert(result, mw.text.nowiki("}}"))
return table.concat(result)
end;
function p.NazwaSzablonu(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa,_=PobierzParametr();
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa);
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np")
if(nazwa_przestrzeni==nazwy_np_modul.Template)then
return nazwy_modul["NAZWASTRONY"](nazwa);
elseif(nazwa_przestrzeni==nazwy_np_modul.Main)then
return ":"..nazwa;
else
return nazwa;
end;
end;
p["Pierwszy niepusty"]= function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local i=1;
local parametry_modul=require("Module:Parametry");
local liczba_elementow_w_tablicy_args=parametry_modul["LiczbaElementówNumerowanychZPrzedrostkiemLubNieTablicy"](args,"test");
local licznik=1;
while true do
local test=args["test"..i];
local _i=args[i];
local zmienna=test or _i;
local czy_tak=parametry_modul.CzyTak(zmienna);
if(czy_tak)then
return (_i)and _i or "{{{"..i.."}}}";
end;
if(licznik>=liczba_elementow_w_tablicy_args)then return "";end;
if(zmienna)then licznik=licznik+1;end;
i=i+1;
end;
return;
end;
p["PełnaNazwaOpisuModułu"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local pelna_nazwa_strony=PobierzParametr(1) or PobierzParametr("nazwa");
local komunikat = mw.message.new('Scribunto-doc-page-name', '$1');
local zawartosc_komunikatu;
if(komunikat:exists())then
zawartosc_komunikatu=komunikat:plain();
zawartosc_komunikatu=mw.getCurrentFrame():preprocess(zawartosc_komunikatu);
else
zawartosc_komunikatu="Module:%1/opis";
end;
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony0=nazwy_modul["PEŁNANAZWASTRONY"](zawartosc_komunikatu);
local pelna_nazwa_strony2=pelna_nazwa_strony and nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony) or nazwy_modul["PEŁNANAZWASTRONY"]();
local patternopis=mw.ustring.gsub(pelna_nazwa_strony0,"%$1",".-");
if(not mw.ustring.match(pelna_nazwa_strony2,"^"..patternopis.."$"))then
local nazwa_strony=nazwy_modul["NAZWASTRONY"](pelna_nazwa_strony2);
local przetworzona_nazwa_strony,_=mw.ustring.gsub(nazwa_strony,"(%%)","%%%%");
przetworzona_nazwa_strony,_=mw.ustring.gsub(przetworzona_nazwa_strony,"/%s*$","");
local pelna_nazwa_strony_opisu, _=mw.ustring.gsub(zawartosc_komunikatu,"%$1",przetworzona_nazwa_strony)
local pelna_strona_opisu=nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony_opisu);
return pelna_strona_opisu;
else
return pelna_nazwa_strony2;
end;
end;
p["WzórDanejPrzestrzeniNazw"] = function (frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor, _ = mw.ustring.gsub(nazwa,"(.)",function (s) return ((mw.ustring.match(s,"^%a$"))and("["..mw.ustring.upper(s)..mw.ustring.lower(s).."]")or s);end )
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["CzyIstniejeDanaPrzestrzeńNazw"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa_przestrzeni_nazw_lub_jego_identyfikator=PobierzParametr(1) or PobierzParametr("nazwa");
local uchwyt_przestrzeni_nazw;
if(mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*[%+%-]?%d+%s*$"))then
local identyfikator,_=mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*([%+%-]?%d+)%s*$");
uchwyt_przestrzeni_nazw=mw.site.namespaces[tonumber(mw.text.trim(identyfikator))];
else
uchwyt_przestrzeni_nazw=mw.site.namespaces[nazwa_przestrzeni_nazw_lub_jego_identyfikator];
end;
if(uchwyt_przestrzeni_nazw)then
return "tak";
else
return;
end;
end;
p["WzórNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor,_=mw.ustring.gsub(strona,"([%[%]%(%)%+%-%*%?%.%^%$%%'])","%%%1");
wzor,_=mw.ustring.gsub(wzor,"^(.)",function(s)return "["..mw.ustring.upper(s)..mw.ustring.lower(s).."]";end);
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["WzórPełnejNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_strony=nazwy_modul["NAZWASTRONY"](strona);
if(nazwa_przestrzeni~="")then
nazwa_przestrzeni=p["WzórDanejPrzestrzeniNazw"](nazwa_przestrzeni);
end;
nazwa_strony=p["WzórNazwyStrony"](nazwa_strony);
return ((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..nazwa_strony;
end;
p["TekstBezOdwołańDoParametrówWeWzorze"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"%%(%d+)","%%%%%1");
return tekst;
end;
p["PrzekształćWzórDoCzystegoTekstu"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
return tekst;
end;
function p.PoliczZbiory(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame,true);
local liczba_istniejacych_zbiorow=0;
local tabela_uchwytow_stron={};
for _,nazwa_strony in ipairs(args) do
local uchwyt_strony = mw.title.makeTitle('',nazwa_strony);
local tekst_artykulu = uchwyt_strony and uchwyt_strony:getContent() or nil;
local czy_istnieje=tekst_artykulu and tekst_artykulu or (uchwyt_strony and uchwyt_strony.exists or nil);
tabela_uchwytow_stron[#tabela_uchwytow_stron+1]={uchwyt_strony,tekst_artykulu,};
if(czy_istnieje)then
liczba_istniejacych_zbiorow=liczba_istniejacych_zbiorow+1;
end;
end;
return liczba_istniejacych_zbiorow,tabela_uchwytow_stron;
end;
function p.TransformacjaWzoru(ciag)
return mw.ustring.gsub(ciag,"[%^%$%(%)%%%.%[%]%*%+%-%?]","%%%1");
end;
p["WyświetlajKodySpecjalne"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
text=mw.ustring.gsub(text,"&#(%d+);",i..hash.."%1"..sr);
text=mw.ustring.gsub(text,"&(%a+);",i.."%1"..sr);
return text;
end;
function p.Wikikod(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local nazwa_modulu=((parametry_modul["CzyTakCiąg"](przestrzen)) and (przestrzen..":") or "")..(nazwa or "Przykłowa strona");
local stronicowyparser_modul=require("Module:StronicowyParser/DalszeFunkcje");
local tekst=stronicowyparser_modul.LadujZawartoscStrony(nil,nazwa_modulu,nil,false,nil,true);
if(not tekst)then
local blad_modul=require("Module:Błąd");
return blad_modul.error{args={tag="span",tekst="Nie ma takiej strony lub artykulu."}};
end;
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
tekst=mw.ustring.gsub(tekst,"&#(%d+);",i..hash.."%1"..sr);
tekst=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..sr);
local tab_znaki={
["{"]="{{(}}",
["}"]="{{)}}",
["|"]="{{!}}",
["="]="{{=}}";
};
local tab_linki={
["["]="{{!(}}",
["]"]="{{)!}}",
["|"]="{{!}}",
}
local tab_tagow={
["<"]="{{Mniejszy}}",
[">"]="{{Większy}}",
}
local tab_zmienne={
["NAMESPACE"]=true,
["PAGENAME"]=true,
};
local tablica_obiektow_strony_dany_modul={};
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne")
local tekst=stronicowyparser_potrzebne_modul.KodujStroneObiektowa(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul);
tekst=stronicowyparser_potrzebne_modul.SkladajSzablonoweWywolanie(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul,function(szablon,kod,obiekt)
if(obiekt=="TEMPLATE")then
if((mw.ustring.match(szablon,"^{{%s*#invoke:"))or(not mw.ustring.match(szablon,"^{{%s*#%a+:")))then
if(mw.ustring.match(szablon,"|"))then
if(mw.ustring.match(szablon,"^{{[^|]*"..stronicowyparser_potrzebne_modul.OgolnyWzor(nil,"(%a+)").."[^|]*|"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
else
if(mw.ustring.match(szablon,stronicowyparser_potrzebne_modul.OgolnyWzor(nil,"(%a+)")))then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
end;
local pseudoszablon=mw.ustring.match(szablon,"^{{%s*subst%s*:%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*safesubst%s*:%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*subst%s*:%s*(%a+)%s*}}$")
or mw.ustring.match(szablon,"^{{%s*safesubst%s*:%s*(%a+)%s*}}$")
or mw.ustring.match(szablon,"^{{%s*(%a+)%s*}}$");
if(pseudoszablon)then
if(tab_zmienne[pseudoszablon])then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
return szablon;
end;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
return szablon;
end;
end;
else
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
end;
elseif((obiekt=="LINKW")or(obiekt=="LINKZ"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif(obiekt=="VAR")then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif((obiekt=="NOWIKI")or(obiekt=="PRE")or(obiekt=="MATH"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak] or tab_tagow[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
else
return szablon;
end;
end);
return frame:getParent():preprocess(tekst);
end;
p["WikikodStrony"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
return text;
end;
function p.LuaSubst(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local strona=args[1] or args["strona"];
if(not parametry_modul.CzyTak(strona))then return "(Bład: nazwa strony jest pusta lub nie podana)";end;
local title=mw.title.makeTitle('',strona);
if((not title)or (not title.exists))then return "(Błąd: Strona nie istnieje)";end;
local tekst=title:getContent();
local inkludowany=parametry_modul.CzyTak(args["inkludowana"]);
if(inkludowany)then
tekst,_=mw.ustring.gsub(tekst,"<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>(.-)</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>","");
tekst,_=mw.ustring.gsub(tekst,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.-)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
end;
return tekst;
end;
function p.NowaLinia(frame)
return "\n";
end;
function p.Nowiki(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local PobierzParametr=parametry_modul.PobierzParametr(args);
local tekst=PobierzParametr("tekst") or PobierzParametr(1);
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local h=html_modul.KodHTMLZnaku("#");
local s=html_modul.KodHTMLZnaku(";");
tekst,_=mw.ustring.gsub(tekst,"&#(%d+);",i..h.."%1"..s);
tekst,_=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..s);
local sprawdz_modul=require("Module:Sprawdź");
tekst=sprawdz_modul["UsuńKategorięSprawdzaniaParametrówSzablonu"]{args={[1]=tekst,},}
tekst=frame:callParserFunction('#tag:nowiki',tekst);
return tekst;
end;
function p.FunkcjaLua(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local modul=require("Module:"..(args[1] or args["moduł"]));
if(modul)then
if(modul[asgs[2] or args["nazwa"] or args["funkcja"]])then
local args2=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,{[1]=true,["moduł"]=true,[2]=true,nazwa=true,funkcja=true,["wyspecjalizowana"]=true,})
return modul[asgs[2] or args["nazwa"] or args["funkcja"]](args2);
end;
end;
end;
p["RozwińSzablonWzględemPodanychParametrów"]=function (frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame)
local PobierzParametr=parametry_modul.PobierzParametr(args);
local nazwa=PobierzParametr("Nazwa strony") or PobierzParametr("Nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("Miano przestrzeni nazw") or PobierzParametr("Przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
local bezkluczy={
["Nazwa strony"]=true,
["Nazwa"]=true,
["Miano przestrzeni nazw"]=true,
["Przestrzeń"]=true,
["wyspecjalizowana"]=true,
["nie rozwiń"]=true,
};
local tab=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,bezkluczy);
local frame2=mw.getCurrentFrame():newChild{title=(parametry_modul.CzyTak(przestrzen)and (przestrzen..":"..nazwa) or nazwa),args=tab};
text=parametry_modul.CzyTak(frame.args["nie rozwiń"]) and text or frame2:preprocess(text);
return text;
end;
p["LiczbaBajtówCiąguDoNormy"] = function(frame)
local str=frame.args[1] or frame.args["ciąg"];
local ile=tonumber(frame.args[2] or frame.args["norma"]);
if(not ile)then return #str;end;
if(#str<=ile)then
return #str;
end;
return nil;
end;
p["LiczbaStronJakoPozycjeDanejKategorii"]=function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local kategoria=parametry_modul.CzyTak(args["kategoria"]) and args["kategoria"] or "Category:Przykładowa kategoria";
local kat={
["subcats"]=true,
["files"]=true,
["pages"]=true,
}
local typ=args["typ"] or "all";
typ=kat[args["typ"]] and args["typ"] or "all";
local nazwy_modul=require("Module:Nazwy");
kategoria=nazwy_modul["NAZWASTRONY"](kategoria);
return mw.site.stats.pagesInCategory(kategoria,typ);
end;
return p;
s5sga6mees05pgud8x0a3zx636sbdoh
439042
439041
2022-08-29T10:52:58Z
Persino
2851
Scribunto
text/plain
local p={};
p["ParsujWywołanieSzablonu"] = function(wywolanie_szablonu)
local wywolanie_bez_parametrow=mw.ustring.match(wywolanie_szablonu,"^{{[^{}|]-}}$");
if(not wywolanie_bez_parametrow)then
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*|.-}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
local parametry_wywolania_szablonu=mw.ustring.match(wywolanie_szablonu,"{{[^{}|]*|([^{}]*)}}");
return ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu);
else return nil;end;
else
local parametry_szablonu={};
parametry_szablonu[0]=mw.text.trim(mw.ustring.match(wywolanie_szablonu,"^{{%s*([^{}|]-)%s*}}$"));
if(parametry_szablonu[0])then
local parametry_modul=require("Module:Parametry");
parametry_szablonu[0]=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=parametry_szablonu[0],[2]="tak",});
return parametry_szablonu;
else return nil;end;
end;
end;
function ParametrySzablonu(parametry_wywolania_szablonu,parametry_szablonu)
local kawalek_wywolania,dalszy_kawalek_wywolania=mw.ustring.match(parametry_wywolania_szablonu,"^([^|]*)|(.*)$");
if(not kawalek_wywolania)then
kawalek_wywolania=parametry_wywolania_szablonu;
end;
if(not dalszy_kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return parametry_szablonu;
end;
if(kawalek_wywolania)then
ZbierzParametrSzablonu(parametry_szablonu,kawalek_wywolania);
return ParametrySzablonu(dalszy_kawalek_wywolania,parametry_szablonu);
end;
return nil;
end;
function ZbierzParametrSzablonu(tworzona_tabela, kawalek_wywolania)
local kawalek_wywolania_element_nienazwany=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*$");
if(kawalek_wywolania_element_nienazwany)then
tworzona_tabela[#tworzona_tabela+1]=mw.text.trim(kawalek_wywolania_element_nienazwany);
return tworzona_tabela;
else
local kawalek_wywolania_klucz,kawalek_wywolania_wartosc=mw.ustring.match(kawalek_wywolania,"^%s*([^|{}=]-)%s*=%s*([^|{}]-)%s*$");
if((kawalek_wywolania_klucz)and(kawalek_wywolania_wartosc))then
if(not mw.ustring.match(kawalek_wywolania_klucz,"^%s*%d+%s*$"))then
tworzona_tabela[mw.text.trim(kawalek_wywolania_klucz)]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
else
tworzona_tabela[tonumber(mw.text.trim(kawalek_wywolania_klucz))]=mw.text.trim(kawalek_wywolania_wartosc);
return tworzona_tabela;
end;
else
return nil;
end;
end;
return nil;
end;
p["PokażSzablon"]=function(szablon, args)
local result = {}
local flags = {}
table.insert(result, mw.text.nowiki("{{"))
if mw.isSubsting() then
table.insert(result, "subst:")
end
table.insert(result, szablon);
if args then
for k, v in pairs(args) do
if (type(k)~="number")then
table.insert(result, "|")
table.insert(result, tostring(k))
table.insert(result, "=")
table.insert(result, mw.text.nowiki(v))
else
table.insert(result, "|")
table.insert(result, mw.text.nowiki(v))
end
end
end
table.insert(result, mw.text.nowiki("}}"))
return table.concat(result)
end;
function p.NazwaSzablonu(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa,_=PobierzParametr();
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa);
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np")
if(nazwa_przestrzeni==nazwy_np_modul.Template)then
return nazwy_modul["NAZWASTRONY"](nazwa);
elseif(nazwa_przestrzeni==nazwy_np_modul.Main)then
return ":"..nazwa;
else
return nazwa;
end;
end;
p["Pierwszy niepusty"]= function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local i=1;
local parametry_modul=require("Module:Parametry");
local liczba_elementow_w_tablicy_args=parametry_modul["LiczbaElementówNumerowanychZPrzedrostkiemLubNieTablicy"](args,"test");
local licznik=1;
while true do
local test=args["test"..i];
local _i=args[i];
local zmienna=test or _i;
local czy_tak=parametry_modul.CzyTak(zmienna);
if(czy_tak)then
return (_i)and _i or "{{{"..i.."}}}";
end;
if(licznik>=liczba_elementow_w_tablicy_args)then return "";end;
if(zmienna)then licznik=licznik+1;end;
i=i+1;
end;
return;
end;
p["PełnaNazwaOpisuModułu"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local pelna_nazwa_strony=PobierzParametr(1) or PobierzParametr("nazwa");
local komunikat = mw.message.new('Scribunto-doc-page-name', '$1');
local zawartosc_komunikatu;
if(komunikat:exists())then
zawartosc_komunikatu=komunikat:plain();
zawartosc_komunikatu=mw.getCurrentFrame():preprocess(zawartosc_komunikatu);
else
zawartosc_komunikatu="Module:%1/opis";
end;
local nazwy_modul=require("Module:Nazwy");
local pelna_nazwa_strony0=nazwy_modul["PEŁNANAZWASTRONY"](zawartosc_komunikatu);
local pelna_nazwa_strony2=pelna_nazwa_strony and nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony) or nazwy_modul["PEŁNANAZWASTRONY"]();
local patternopis=mw.ustring.gsub(pelna_nazwa_strony0,"%$1",".-");
if(not mw.ustring.match(pelna_nazwa_strony2,"^"..patternopis.."$"))then
local nazwa_strony=nazwy_modul["NAZWASTRONY"](pelna_nazwa_strony2);
local przetworzona_nazwa_strony,_=mw.ustring.gsub(nazwa_strony,"(%%)","%%%%");
przetworzona_nazwa_strony,_=mw.ustring.gsub(przetworzona_nazwa_strony,"/%s*$","");
local pelna_nazwa_strony_opisu, _=mw.ustring.gsub(zawartosc_komunikatu,"%$1",przetworzona_nazwa_strony)
local pelna_strona_opisu=nazwy_modul["PEŁNANAZWASTRONY"](pelna_nazwa_strony_opisu);
return pelna_strona_opisu;
else
return pelna_nazwa_strony2;
end;
end;
p["WzórDanejPrzestrzeniNazw"] = function (frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor, _ = mw.ustring.gsub(nazwa,"(.)",function (s) return ((mw.ustring.match(s,"^%a$"))and("["..mw.ustring.upper(s)..mw.ustring.lower(s).."]")or s);end )
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["CzyIstniejeDanaPrzestrzeńNazw"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa_przestrzeni_nazw_lub_jego_identyfikator=PobierzParametr(1) or PobierzParametr("nazwa");
local uchwyt_przestrzeni_nazw;
if(mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*[%+%-]?%d+%s*$"))then
local identyfikator,_=mw.ustring.match(nazwa_przestrzeni_nazw_lub_jego_identyfikator,"^%s*([%+%-]?%d+)%s*$");
uchwyt_przestrzeni_nazw=mw.site.namespaces[tonumber(mw.text.trim(identyfikator))];
else
uchwyt_przestrzeni_nazw=mw.site.namespaces[nazwa_przestrzeni_nazw_lub_jego_identyfikator];
end;
if(uchwyt_przestrzeni_nazw)then
return "tak";
else
return;
end;
end;
p["WzórNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local wzor,_=mw.ustring.gsub(strona,"([%[%]%(%)%+%-%*%?%.%^%$%%'])","%%%1");
wzor,_=mw.ustring.gsub(wzor,"^(.)",function(s)return "["..mw.ustring.upper(s)..mw.ustring.lower(s).."]";end);
wzor,_=mw.ustring.gsub(wzor,"[%s_]+","[%%s_]+");
wzor="[%s_]*"..wzor.."[%s_]*";
return wzor;
end;
p["WzórPełnejNazwyStrony"] = function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local strona=PobierzParametr(1) or PobierzParametr("nazwa");
local nazwy_modul=require("Module:Nazwy");
local nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_strony=nazwy_modul["NAZWASTRONY"](strona);
if(nazwa_przestrzeni~="")then
nazwa_przestrzeni=p["WzórDanejPrzestrzeniNazw"](nazwa_przestrzeni);
end;
nazwa_strony=p["WzórNazwyStrony"](nazwa_strony);
return ((nazwa_przestrzeni~="")and (nazwa_przestrzeni..":") or "")..nazwa_strony;
end;
p["TekstBezOdwołańDoParametrówWeWzorze"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"%%(%d+)","%%%%%1");
return tekst;
end;
p["PrzekształćWzórDoCzystegoTekstu"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
tekst,_=mw.ustring.gsub(tekst,"([%^%$%(%)%%%.%[%]%*%+%-%?])","%%%1");
return tekst;
end;
function p.PoliczZbiory(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame,true);
local liczba_istniejacych_zbiorow=0;
local tabela_uchwytow_stron={};
for _,nazwa_strony in ipairs(args) do
local uchwyt_strony = mw.title.makeTitle('',nazwa_strony);
local tekst_artykulu = uchwyt_strony and uchwyt_strony:getContent() or nil;
local czy_istnieje=tekst_artykulu and tekst_artykulu or (uchwyt_strony and uchwyt_strony.exists or nil);
tabela_uchwytow_stron[#tabela_uchwytow_stron+1]={uchwyt_strony,tekst_artykulu,};
if(czy_istnieje)then
liczba_istniejacych_zbiorow=liczba_istniejacych_zbiorow+1;
end;
end;
return liczba_istniejacych_zbiorow,tabela_uchwytow_stron;
end;
function p.TransformacjaWzoru(ciag)
return mw.ustring.gsub(ciag,"[%^%$%(%)%%%.%[%]%*%+%-%?]","%%%1");
end;
p["WyświetlajKodySpecjalne"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local tekst=PobierzParametr(1) or PobierzParametr("nazwa");
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
text=mw.ustring.gsub(text,"&#(%d+);",i..hash.."%1"..sr);
text=mw.ustring.gsub(text,"&(%a+);",i.."%1"..sr);
return text;
end;
function p.Wikikod(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local nazwa_modulu=((parametry_modul["CzyTakCiąg"](przestrzen)) and (przestrzen..":") or "")..(nazwa or "Przykłowa strona");
local stronicowyparser_modul=require("Module:StronicowyParser/DalszeFunkcje");
local tekst=stronicowyparser_modul.LadujZawartoscStrony(nil,nazwa_modulu,nil,false,nil,true);
if(not tekst)then
local blad_modul=require("Module:Błąd");
return blad_modul.error{args={tag="span",tekst="Nie ma takiej strony lub artykulu."}};
end;
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local hash=html_modul.KodHTMLZnaku("#");
local sr=html_modul.KodHTMLZnaku(";");
tekst=mw.ustring.gsub(tekst,"&#(%d+);",i..hash.."%1"..sr);
tekst=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..sr);
local tab_znaki={
["{"]="{{(}}",
["}"]="{{)}}",
["|"]="{{!}}",
["="]="{{=}}";
};
local tab_linki={
["["]="{{!(}}",
["]"]="{{)!}}",
["|"]="{{!}}",
}
local tab_tagow={
["<"]="{{Mniejszy}}",
[">"]="{{Większy}}",
}
local tab_zmienne={
["NAMESPACE"]=true,
["PAGENAME"]=true,
};
local tablica_obiektow_strony_dany_modul={};
local stronicowyparser_potrzebne_modul=require("Module:StronicowyParser/Potrzebne")
local tekst=stronicowyparser_potrzebne_modul.KodujStroneObiektowa(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul);
tekst=stronicowyparser_potrzebne_modul.SkladajSzablonoweWywolanie(nil,tekst,nazwa_modulu,tablica_obiektow_strony_dany_modul,function(szablon,kod,obiekt)
if(obiekt=="TEMPLATE")then
if((mw.ustring.match(szablon,"^{{%s*#invoke:"))or(not mw.ustring.match(szablon,"^{{%s*#%a+:")))then
if(mw.ustring.match(szablon,"|"))then
if(mw.ustring.match(szablon,"^{{[^|]*"..stronicowyparser_potrzebne_modul.OgolnyWzor(nil,"(%a+)").."[^|]*|"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
szablon,_=mw.ustring.gsub(szablon,"=","{{=}}");
return szablon;
end;
else
if(mw.ustring.match(szablon,stronicowyparser_potrzebne_modul.OgolnyWzor(nil,"(%a+)")))then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
end;
local pseudoszablon=mw.ustring.match(szablon,"^{{%s*subst%s*:%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*safesubst%s*:%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*(%a+)%s*:")
or mw.ustring.match(szablon,"^{{%s*subst%s*:%s*(%a+)%s*}}$")
or mw.ustring.match(szablon,"^{{%s*safesubst%s*:%s*(%a+)%s*}}$")
or mw.ustring.match(szablon,"^{{%s*(%a+)%s*}}$");
if(pseudoszablon)then
if(tab_zmienne[pseudoszablon])then
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
return szablon;
end;
else
szablon,_=mw.ustring.gsub(szablon,"^{{","{{s|");
return szablon;
end;
end;
else
szablon,_=mw.ustring.gsub(szablon,"(.)",tab_znaki);
return szablon;
end;
elseif((obiekt=="LINKW")or(obiekt=="LINKZ"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif(obiekt=="VAR")then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
elseif((obiekt=="NOWIKI")or(obiekt=="PRE")or(obiekt=="MATH"))then
szablon,_=mw.ustring.gsub(szablon,"(.)",function(znak)
local odpowied=tab_linki[znak] or tab_znaki[znak] or tab_tagow[znak];
if(odpowied)then return odpowied;end;
return znak;
end);
return szablon;
else
return szablon;
end;
end);
return frame:getParent():preprocess(tekst);
end;
p["WikikodStrony"]=function(frame)
local parametry_modul=require("Module:Parametry");
local PobierzParametr=parametry_modul.PobierzParametr(frame);
local nazwa=PobierzParametr("nazwa strony") or PobierzParametr("nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("miano przestrzeni nazw") or PobierzParametr("przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
if((not title)or (not title.exists))then return;end;
local text=title:getContent();
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
return text;
end;
function p.LuaSubst(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local strona=args[1] or args["strona"];
if(not parametry_modul.CzyTak(strona))then return "(Bład: nazwa strony jest pusta lub nie podana)";end;
local title=mw.title.makeTitle('',strona);
if((not title)or (not title.exists))then return "(Błąd: Strona nie istnieje)";end;
local tekst=title:getContent();
local inkludowany=parametry_modul.CzyTak(args["inkludowana"]);
if(inkludowany)then
tekst,_=mw.ustring.gsub(tekst,"<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>(.-)</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>","");
tekst,_=mw.ustring.gsub(tekst,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.-)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
end;
return tekst;
end;
function p.NowaLinia(frame)
return "\n";
end;
function p.Nowiki(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local PobierzParametr=parametry_modul.PobierzParametr(args);
local tekst=PobierzParametr("tekst") or PobierzParametr(1);
local html_modul=require("Module:Html");
local i=html_modul.KodHTMLZnaku("&");
local h=html_modul.KodHTMLZnaku("#");
local s=html_modul.KodHTMLZnaku(";");
tekst,_=mw.ustring.gsub(tekst,"&#(%d+);",i..h.."%1"..s);
tekst,_=mw.ustring.gsub(tekst,"&(%a+);",i.."%1"..s);
local sprawdz_modul=require("Module:Sprawdź");
tekst=sprawdz_modul["UsuńKategorięSprawdzaniaParametrówSzablonu"]{args={[1]=tekst,},}
tekst=frame:callParserFunction('#tag:nowiki',tekst);
return tekst;
end;
function p.FunkcjaLua(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local modul=require("Module:"..(args[1] or args["moduł"]));
if(modul)then
if(modul[asgs[2] or args["nazwa"] or args["funkcja"]])then
local args2=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,{[1]=true,["moduł"]=true,[2]=true,nazwa=true,funkcja=true,["wyspecjalizowana"]=true,})
return modul[asgs[2] or args["nazwa"] or args["funkcja"]](args2);
end;
end;
end;
p["RozwińSzablonWzględemPodanychParametrów"]=function (frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame)
local PobierzParametr=parametry_modul.PobierzParametr(args);
local nazwa=PobierzParametr("Nazwa strony") or PobierzParametr("Nazwa") or PobierzParametr(1);
local przestrzen=PobierzParametr("Miano przestrzeni nazw") or PobierzParametr("Przestrzeń") or "Template";
local title=mw.title.makeTitle(przestrzen,nazwa);
local text=title and title:getContent() or nil;
if(not text)then
local blad_modul=require("Module:Błąd");
return blad_modul.error{args={tag="span",tekst="Strona nie istnieje lub nie ma zawartości."}};
end;
text=mw.ustring.gsub(text,"(<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>)","");
text=mw.ustring.gsub(text,"<[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>(.*)</[Ii][Nn][Cc][Ll][Uu][Dd][Ee][Oo][Nn][Ll][Yy]>","%1");
local bezkluczy={
["Nazwa strony"]=true,
["Nazwa"]=true,
["Miano przestrzeni nazw"]=true,
["Przestrzeń"]=true,
["wyspecjalizowana"]=true,
["nie rozwiń"]=true,
};
local tab=parametry_modul["KopiujTabelęElementówBezTablicyKluczy"](args,bezkluczy);
local frame2=mw.getCurrentFrame():newChild{title=(parametry_modul.CzyTak(przestrzen)and (przestrzen..":"..nazwa) or nazwa),args=tab};
text=parametry_modul.CzyTak(frame.args["nie rozwiń"]) and text or frame2:preprocess(text);
return text;
end;
p["LiczbaBajtówCiąguDoNormy"] = function(frame)
local str=frame.args[1] or frame.args["ciąg"];
local ile=tonumber(frame.args[2] or frame.args["norma"]);
if(not ile)then return #str;end;
if(#str<=ile)then
return #str;
end;
return nil;
end;
p["LiczbaStronJakoPozycjeDanejKategorii"]=function(frame)
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.PobierzArgsParametry(frame);
local kategoria=parametry_modul.CzyTak(args["kategoria"]) and args["kategoria"] or "Category:Przykładowa kategoria";
local kat={
["subcats"]=true,
["files"]=true,
["pages"]=true,
}
local typ=args["typ"] or "all";
typ=kat[args["typ"]] and args["typ"] or "all";
local nazwy_modul=require("Module:Nazwy");
kategoria=nazwy_modul["NAZWASTRONY"](kategoria);
return mw.site.stats.pagesInCategory(kategoria,typ);
end;
return p;
3oe0e0y3zhwadhegf54isrxpy74ansr
Szablon:PreWikikod/opis
10
56640
438984
426494
2022-08-28T15:24:49Z
Persino
2851
/* Przykłady stylowe */
wikitext
text/x-wiki
{{Podstrona dokumentacji}}
<!-- DODAWAJ KATEGORIE NA DOLE STRONY -->
== Użycie ==
Szablon służy do wyświetlania wikikodu podanych szablonów lub innych stron, przy czym wywołania szablonowe są zastępowane wywołaniem szablonu {{s|s}}, a wywołania modułowe szablonem {{s|m}}. Wikikod jest umieszczany w ramce znacznika {{Tag|pre}}. {{#ifeq:{{ROOTPAGENAME}}|PreWikikod|Ale wiele spacji nie są skracane do jednej, chyba, że użyjemy: {{Parametr|styl|white-space:pre-line}}|Ale wiele spacji są skracane do jednej, bo w tym szablonie jest ukryty, który nie jawnie użyliśmy: {{Parametr|styl|white-space:pre-line}}, w funkcji {{s|PreLine}}}}.
== Opis parametrów ==
; Wywołanie
{{Pre|{{s|{{ROOTPAGENAME}}|{{Code|{{!(}}miano przestrzeni nazw{{!}}przestrzeń{{)!}}}}{{=}}|{{Code|{{!(}}nazwa strony{{!}}nazwa{{!}}1{{)!}}}}{{=}}}}}}
; Parametry podstawowe
* {{Code|miano przestrzeni nazw}} lub {{Code|przestrzeń}} - podana obsługiwana nazwa przestrzeni nazw (domyślnie: {{Code|Template}}) - opcjonalne,
* {{Code|nazwa strony}}, {{Code|nazwa}} lub {{Code|1}} - nazwa strony bez nazwy przestrzeni nazw - wymagane.
----
; Wywołanie
{{Pre|{{s|{{ROOTPAGENAME}}|{{Code|{{!(}}miano przestrzeni nazw{{!}}przestrzeń{{)!}}}}{{=}}|{{Code|{{!(}}nazwa strony{{!}}nazwa{{!}}1{{)!}}}}{{=}}|id{{=}}|styl{{=}}|klasa{{=}}|atrybuty{{=}}}}}}
; Parametry dalsze (dodatkowe)
* {{Code|id}} - unikatowy identyfikator, znacznika - sugerowany,
* {{Code|styl}} - styl CSS znacznika - właściwości i ich wartości - opcjonalny,
* {{Code|klasa}} - reguły CSS, do klasy znacznika, czyli zbioru właściwości i ich wartości - opcjonalny,
* {{Code|atrybuty}} - atrybuty znacznika (inne niż: {{Code|id}}, {{Code|styl}} i {{Code|class}}) - opcjonalny.
----
Powyższe parametry oprócz pierwszego są opcjonalne za wyjątkiem parametru: {{Code|id}}, który jest sugerowany.
== Wikikod==
Szablon {{s|{{ROOTPAGENAME}}}} ma kod w zależności od modułu: {{m|Techniczne}}, przedstawiający się
; Szablon {{s|{{ROOTPAGENAME}}}}
{{ {{ROOTPAGENAME}}|{{ROOTPAGENAME}}}}
Widzimy, że ten szablon zbiera parametry tego szablonu za pomocą specjalnej funkcji języka {{LinkPediaGłówna|Lua}} w {{LinkPediaProjekt|Lua|Scribunto}}.
== Przykłady ==
=== Przykłady bezstylowe ===
; Przykład pierwszy
{{s|{{ROOTPAGENAME}}|LinkUstęp}}
; Wynik
{{ {{ROOTPAGENAME}}|LinkUstęp}}
----
; Przykład drugi
{{s|{{ROOTPAGENAME}}|przestrzeń{{=}}Template|LinkUstęp}}
; Wynik
{{ {{ROOTPAGENAME}}|przestrzeń=Template|LinkUstęp}}
=== Przykłady stylowe ===
Style są w oparciu o kaskadowe arkusze stylów, które są napisane w stylach przykładów: {{LinkSzablon|Znacznik/przykłady.css}}. W poniższych przykładach należy pamiętać o napisaniu:
{{ŹródłoKodu|{{Mniejszy}}templatestyles src{{=}}"Szablon:Znacznik/przykłady.css" /{{Większy}}}}
Zatem:
<templatestyles src="Szablon:Znacznik/przykłady.css" />
; Przykład pierwszy
{{s|{{ROOTPAGENAME}}|LinkUstęp|styl{{=}}font-size:15px;color:darkslategray;background-color:ivory;border:darkblue 1px solid;}}
; Wynik
{{ {{ROOTPAGENAME}}|LinkUstęp|styl=font-size:15px;color:darkslategray;background-color:ivory;border:darkblue 1px solid;}}
----
; Przykład drugi
{{s|{{ROOTPAGENAME}}|LinkUstęp|styl{{=}}color:darkslategray;background-color:ivory;border:darkblue 1px solid;|klasa{{=}}czcionka}}
; Wynik
{{ {{ROOTPAGENAME}}|LinkUstęp|styl=color:darkslategray;background-color:ivory;border:darkblue 1px solid;|klasa=czcionka}}
-
---
; Przykład trzeci
{{s|{{ROOTPAGENAME}}|LinkUstęp|styl{{=}}color:darkslategray;|klasa{{=}}czcionka|id{{=}}przykład2}}
; Wynik
{{ {{ROOTPAGENAME}}|LinkUstęp|styl=color:darkslategray;|klasa=czcionka|id=przykład2}}
----
; Przykład czwarty
{{s|{{ROOTPAGENAME}}|LinkUstęp|klasa{{=}}tło obramowanie|id{{=}}przykład1}}
; Wynik
{{ {{ROOTPAGENAME}}|LinkUstęp|klasa=tło obramowanie|id=przykład1}}
----
; Przykład piąty
{{s|{{ROOTPAGENAME}}|LinkUstęp|klasa{{=}}czcionka kolor tło obramowanie}}
; Wynik
{{ {{ROOTPAGENAME}}|LinkUstęp|klasa=czcionka kolor tło obramowanie}}
----
; Przykład szósty
{{s|{{ROOTPAGENAME}}|LinkUstęp|id{{=}}przykład}}
; Wynik
{{ {{ROOTPAGENAME}}|LinkUstęp|id=przykład}}
-----
-----
Widzimy w powyższej tabelce, że niezależnie jak napiszemy znacznik {{Tag|pre}}, to wynik otrzymujemy taki sam, a to rozplanowanie stylów zrobiliśmy poprzez rozdzielenie stylów pomiędzy atrybutami {{Code|style}}, {{Code|class}} lub {{Code|id}}.
== Błędy ==
Błędy należy zgłaszać na stronie {{Kwestie techniczne}}.
== Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) ==
<templatedata>
{
"params": {
"miano przestrzeni nazw": {
"aliases": [
"przestrzeń"
],
"description": "Nazwa przestrzeni nazw, w której jest podana strona.",
"type": "string",
"default": "Template",
"suggested": true
},
"nazwa strony": {
"aliases": [
"nazwa"
],
"description": "Nazwa strony bez nazwy przestrzeni nazw.",
"type": "string",
"required": true
},
"id": {
"description": "Identyfikator znacznika.",
"type": "string",
"suggested": true
},
"styl": {
"description": "Styl języka CSS (właściwości i ich wartości).",
"type": "string"
},
"klasa": {
"description": "Zestaw reguł CSS - kaskadowych arkuszy stylów.",
"type": "string"
},
"atrybuty": {
"description": "Atrybuty znacznika (inne niż: id, style i class).",
"type": "string"
}
},
"description": "Szablon do wyświetlania nierozwiniętego wikikodu szablonów lub innych stron, w ramce: <pre>...</pre>, w której wiele spacji koło siebie nie są skracane do jednej."
}
</templatedata>
== Zobacz też ==
* {{s|Wikikod}} - wyświetla wikikod strony w postaci czystego tekstu,
* {{s|{{#ifeq:{{ROOTPAGENAME}}|PreWikikod|PreLineWikikod|PreWikikod}}}} - wyświetla wikikod strony preformatowany w ramce (oparty o znacznik: {{Tag|pre}}), przy czym sąsiadujące spacje {{#ifeq:{{ROOTPAGENAME}}|PreWikikod|są|nie są}} skracane do jednej,
* {{s|ŹródłoWikikod}} - wyświetla źródło wikikodu strony z podświetlaną składnią (oparty o znacznik: {{Tag|syntaxhighlight}}).
{{Szablony ramek formułujące kod}}
{{BrClear}}
<includeonly><!--
++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII -->
{{Kategorie
| Szablony ramek generujące wikikod
| Szablony ramek wyświetlające wikikod
| Szablony ramek posługujące się wikikodem
| Szablony ramek wyświetlające kod komputerowy
| Szablony specjalne
| Szablony symbolizujące wikikod
}}
</includeonly>
bpk4zeo52z9dobc2yh1lo1soscgbjk8
439037
438984
2022-08-29T10:37:25Z
Persino
2851
wikitext
text/x-wiki
{{Podstrona dokumentacji}}
{{Lua|Module:Techniczne}}
<!-- DODAWAJ KATEGORIE NA DOLE STRONY -->
== Użycie ==
Szablon służy do wyświetlania wikikodu podanych szablonów lub innych stron, przy czym wywołania szablonowe są zastępowane wywołaniem szablonu {{s|s}}, a wywołania modułowe szablonem {{s|m}}. Wikikod jest umieszczany w ramce znacznika {{Tag|pre}}. {{#ifeq:{{ROOTPAGENAME}}|PreWikikod|Ale wiele spacji nie są skracane do jednej, chyba, że użyjemy: {{Parametr|styl|white-space:pre-line}}|Ale wiele spacji są skracane do jednej, bo w tym szablonie jest ukryty, który nie jawnie użyliśmy: {{Parametr|styl|white-space:pre-line}}, w funkcji {{s|PreLine}}}}.
== Opis parametrów ==
; Wywołanie
{{Pre|{{s|{{ROOTPAGENAME}}|{{Code|{{!(}}miano przestrzeni nazw{{!}}przestrzeń{{)!}}}}{{=}}|{{Code|{{!(}}nazwa strony{{!}}nazwa{{!}}1{{)!}}}}{{=}}}}}}
; Parametry podstawowe
* {{Code|miano przestrzeni nazw}} lub {{Code|przestrzeń}} - podana obsługiwana nazwa przestrzeni nazw (domyślnie: {{Code|Template}}) - opcjonalne,
* {{Code|nazwa strony}}, {{Code|nazwa}} lub {{Code|1}} - nazwa strony bez nazwy przestrzeni nazw - wymagane.
----
; Wywołanie
{{Pre|{{s|{{ROOTPAGENAME}}|{{Code|{{!(}}miano przestrzeni nazw{{!}}przestrzeń{{)!}}}}{{=}}|{{Code|{{!(}}nazwa strony{{!}}nazwa{{!}}1{{)!}}}}{{=}}|id{{=}}|styl{{=}}|klasa{{=}}|atrybuty{{=}}}}}}
; Parametry dalsze (dodatkowe)
* {{Code|id}} - unikatowy identyfikator, znacznika - sugerowany,
* {{Code|styl}} - styl CSS znacznika - właściwości i ich wartości - opcjonalny,
* {{Code|klasa}} - reguły CSS, do klasy znacznika, czyli zbioru właściwości i ich wartości - opcjonalny,
* {{Code|atrybuty}} - atrybuty znacznika (inne niż: {{Code|id}}, {{Code|styl}} i {{Code|class}}) - opcjonalny.
----
Powyższe parametry oprócz pierwszego są opcjonalne za wyjątkiem parametru: {{Code|id}}, który jest sugerowany.
== Wikikod==
Szablon {{s|{{ROOTPAGENAME}}}} ma kod w zależności od modułu: {{m|Techniczne}}, przedstawiający się
; Szablon {{s|{{ROOTPAGENAME}}}}
{{ {{ROOTPAGENAME}}|{{ROOTPAGENAME}}}}
Widzimy, że ten szablon zbiera parametry tego szablonu za pomocą specjalnej funkcji języka {{LinkPediaGłówna|Lua}} w {{LinkPediaProjekt|Lua|Scribunto}}.
== Przykłady ==
=== Przykłady bezstylowe ===
; Przykład pierwszy
{{s|{{ROOTPAGENAME}}|LinkUstęp}}
; Wynik
{{ {{ROOTPAGENAME}}|LinkUstęp}}
----
; Przykład drugi
{{s|{{ROOTPAGENAME}}|przestrzeń{{=}}Template|LinkUstęp}}
; Wynik
{{ {{ROOTPAGENAME}}|przestrzeń=Template|LinkUstęp}}
=== Przykłady stylowe ===
Style są w oparciu o kaskadowe arkusze stylów, które są napisane w stylach przykładów: {{LinkSzablon|Znacznik/przykłady.css}}. W poniższych przykładach należy pamiętać o napisaniu:
{{ŹródłoKodu|{{Mniejszy}}templatestyles src{{=}}"Szablon:Znacznik/przykłady.css" /{{Większy}}}}
Zatem:
<templatestyles src="Szablon:Znacznik/przykłady.css" />
; Przykład pierwszy
{{s|{{ROOTPAGENAME}}|LinkUstęp|styl{{=}}font-size:15px;color:darkslategray;background-color:ivory;border:darkblue 1px solid;}}
; Wynik
{{ {{ROOTPAGENAME}}|LinkUstęp|styl=font-size:15px;color:darkslategray;background-color:ivory;border:darkblue 1px solid;}}
----
; Przykład drugi
{{s|{{ROOTPAGENAME}}|LinkUstęp|styl{{=}}color:darkslategray;background-color:ivory;border:darkblue 1px solid;|klasa{{=}}czcionka}}
; Wynik
{{ {{ROOTPAGENAME}}|LinkUstęp|styl=color:darkslategray;background-color:ivory;border:darkblue 1px solid;|klasa=czcionka}}
-
---
; Przykład trzeci
{{s|{{ROOTPAGENAME}}|LinkUstęp|styl{{=}}color:darkslategray;|klasa{{=}}czcionka|id{{=}}przykład2}}
; Wynik
{{ {{ROOTPAGENAME}}|LinkUstęp|styl=color:darkslategray;|klasa=czcionka|id=przykład2}}
----
; Przykład czwarty
{{s|{{ROOTPAGENAME}}|LinkUstęp|klasa{{=}}tło obramowanie|id{{=}}przykład1}}
; Wynik
{{ {{ROOTPAGENAME}}|LinkUstęp|klasa=tło obramowanie|id=przykład1}}
----
; Przykład piąty
{{s|{{ROOTPAGENAME}}|LinkUstęp|klasa{{=}}czcionka kolor tło obramowanie}}
; Wynik
{{ {{ROOTPAGENAME}}|LinkUstęp|klasa=czcionka kolor tło obramowanie}}
----
; Przykład szósty
{{s|{{ROOTPAGENAME}}|LinkUstęp|id{{=}}przykład}}
; Wynik
{{ {{ROOTPAGENAME}}|LinkUstęp|id=przykład}}
-----
-----
Widzimy w powyższej tabelce, że niezależnie jak napiszemy znacznik {{Tag|pre}}, to wynik otrzymujemy taki sam, a to rozplanowanie stylów zrobiliśmy poprzez rozdzielenie stylów pomiędzy atrybutami {{Code|style}}, {{Code|class}} lub {{Code|id}}.
== Błędy ==
Błędy należy zgłaszać na stronie {{Kwestie techniczne}}.
== Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) ==
<templatedata>
{
"params": {
"miano przestrzeni nazw": {
"aliases": [
"przestrzeń"
],
"description": "Nazwa przestrzeni nazw, w której jest podana strona.",
"type": "string",
"default": "Template",
"suggested": true
},
"nazwa strony": {
"aliases": [
"nazwa"
],
"description": "Nazwa strony bez nazwy przestrzeni nazw.",
"type": "string",
"required": true
},
"id": {
"description": "Identyfikator znacznika.",
"type": "string",
"suggested": true
},
"styl": {
"description": "Styl języka CSS (właściwości i ich wartości).",
"type": "string"
},
"klasa": {
"description": "Zestaw reguł CSS - kaskadowych arkuszy stylów.",
"type": "string"
},
"atrybuty": {
"description": "Atrybuty znacznika (inne niż: id, style i class).",
"type": "string"
}
},
"description": "Szablon do wyświetlania nierozwiniętego wikikodu szablonów lub innych stron, w ramce: <pre>...</pre>, w której wiele spacji koło siebie nie są skracane do jednej."
}
</templatedata>
== Zobacz też ==
* {{s|Wikikod}} - wyświetla wikikod strony w postaci czystego tekstu,
* {{s|{{#ifeq:{{ROOTPAGENAME}}|PreWikikod|PreLineWikikod|PreWikikod}}}} - wyświetla wikikod strony preformatowany w ramce (oparty o znacznik: {{Tag|pre}}), przy czym sąsiadujące spacje {{#ifeq:{{ROOTPAGENAME}}|PreWikikod|są|nie są}} skracane do jednej,
* {{s|ŹródłoWikikod}} - wyświetla źródło wikikodu strony z podświetlaną składnią (oparty o znacznik: {{Tag|syntaxhighlight}}).
{{Szablony ramek formułujące kod}}
{{BrClear}}
<includeonly><!--
++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII -->
{{Kategorie
| Szablony ramek generujące wikikod
| Szablony ramek wyświetlające wikikod
| Szablony ramek posługujące się wikikodem
| Szablony ramek wyświetlające kod komputerowy
| Szablony specjalne
| Szablony symbolizujące wikikod
}}
</includeonly>
34jfaox303bfzzoah5t712ukkanucc7
Szablon:ŹródłoWikikod/opis
10
56642
439038
426495
2022-08-29T10:38:50Z
Persino
2851
wikitext
text/x-wiki
{{Podstrona dokumentacji}}
{{Lua|Module:Techniczne}}
<!-- DODAWAJ KATEGORIE NA DOLE STRONY -->
== Użycie ==
Szablon do wyświetlania wikikodu szablonów i innych stron z podświetlaniem jego składni.
== Opis parametrów ==
; Wywołanie
{{Pre|{{s|ŹródłoWikikod|{{Code|{{!(}}miano przestrzeni nazw{{!}}przestrzeń{{)!}}}}{{=}}|{{Code|{{!(}}nazwa strony{{!}}nazwa{{!}}1{{)!}}}}{{=}}}}}}
; Parametry
* {{Code|miano przestrzeni nazw}}, {{Code|przestrzeń}} lub {{Code|1}} - podana obsługiwana nazwa przestrzeni nazw (domyślnie: {{Code|Template}}) - opcjonalne,
* {{Code|nazwa strony}} lub {{Code|nazwa}} - nazwa strony bez nazwy przestrzeni nazw - wymagane.
== Wikikod==
Szablon {{s|ŹródłoWikikod}} ma kod w zależności od modułu: {{m|Techniczne}}, przedstawiający się
; Szablon {{s|ŹródłoWikikod}}
{{PreWikikod|ŹródłoWikikod}}
Widzimy, że ten szablon zbiera parametry tego szablonu za pomocą specjalnej funkcji języka {{LinkPediaGłówna|Lua}} w {{LinkPediaProjekt|Lua|Scribunto}}.
== Przykład ==
=== Pierwszy zestaw przykładów ===
;Przykład pierwszy
{{s|ŹródłoWikikod|Code}}
;Wynik
{{ŹródłoWikikod|Code}}
;Przykład drugi
{{s|ŹródłoWikikod|nazwa{{=}}Code}}
;Wynik
{{ŹródłoWikikod|nazwa=Code}}
;Przykład trzeci
{{s|ŹródłoWikikod|przestrzeń{{=}}Template|Code}}
;Wynik
{{ŹródłoWikikod|przestrzeń=Template|Code}}
;Przykład czwarty
{{s|ŹródłoWikikod|przestrzeń{{=}}Template|nazwa{{=}}Code}}
;Wynik
{{ŹródłoWikikod|przestrzeń=Template|nazwa=Code}}
=== Drugi zestaw przykładów ===
;Przykład pierwszy
{{s|ŹródłoWikikod|nazwa strony{{=}}Code}}
;Wynik
{{ŹródłoWikikod|nazwa strony=Code}}
;Przykład czwarty
{{s|ŹródłoWikikod|nazwa przestrzeni nazw{{=}}Template|Code}}
;Wynik
{{ŹródłoWikikod|nazwa przestrzeni nazw=Template|Code}}
;Przykład piąty
{{s|ŹródłoWikikod|nazwa przestrzeni nazw{{=}}Template|nazwa strony{{=}}Code}}
;Wynik
{{ŹródłoWikikod|nazwa przestrzeni nazw=Template|nazwa strony=Code}}
== Błędy ==
Błędy należy zgłaszać na stronie {{Kwestie techniczne}}.
== Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) ==
<templatedata>
{
"params": {
"miano przestrzeni nazw": {
"aliases": [
"przestrzeń"
],
"description": "Nazwa przestrzeni nazw, w której jest podana strona.",
"type": "string",
"default": "Template",
"suggested": true
},
"nazwa strony": {
"aliases": [
"nazwa"
],
"description": "Nazwa strony bez nazwy przestrzeni nazw.",
"type": "string",
"required": true
}
},
"description": "Szablon do podświetlania składni nierozwiniętego wikikodu szablonów lub innych stron."
}
</templatedata>
== Zobacz też ==
* {{s|Wikikod}} - wyświetla wikikod strony w postaci czystego tekstu,
* {{s|PreWikikod}} - wyświetla wikikod strony preformatowany w ramce (oparty o znacznik: {{Tag|pre}}), przy czym sąsiadujące spacje nie są skracane do jednej,
* {{s|PreLineWikikod}} - wyświetla wikikod strony preformatowany w ramce (oparty o znacznik: {{Tag|pre}}), przy czym sąsiadujące spacje są skracane do jednej.
{{Szablony ramek formułujące kod}}
{{BrClear}}
<includeonly><!--
++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII -->
{{Kategorie
| Szablony ramek generujące wikikod
| Szablony ramek wyświetlające wikikod
| Szablony ramek posługujące się wikikodem
| Szablony ramek wyświetlające kod komputerowy
| Szablony specjalne
| Szablony symbolizujące wikikod
}}
</includeonly>
gahvvx3dj0b8282cmt3mc0dceugt3iv
Szablon:ŹródłoNowiki
10
56643
439040
395627
2022-08-29T10:46:20Z
Persino
2851
wikitext
text/x-wiki
<includeonly>{{ŹródłoKodu|język=html+smarty|{{#invoke:Techniczne|RozwińSzablonWzględemPodanychParametrów}}}}</includeonly><noinclude>{{Dokumentacja}}</noinclude>
e2sa21mvphus42uph0gid4g6kyq15he
Szablon:ŹródłoNowiki/opis
10
56644
439043
426498
2022-08-29T10:54:42Z
Persino
2851
wikitext
text/x-wiki
{{Podstrona dokumentacji}}
{{Lua|Module:techniczne}}
<!-- DODAWAJ KATEGORIE NA DOLE STRONY -->
== Użycie ==
Szablon służy do podświetlania składni rozwijanych przez niego szablonów, czy stron, względem jego parametrów.
== Opis parametrów ==
; Wywołanie
{{Pre|{{s|ŹródłoNowiki|{{Code|{{!(}}Miano przestrzeni nazw{{!}}Przestrzeń{{)!}}}} {{=}} {{!}} {{Code|{{!(}}Nazwa strony{{!}}Nazwa{{)!}}}} {{=}} | {{Code|...}} }}}}
; Parametry
* {{Code|Miano przestrzeni nazw}} lub {{Code|Przestrzeń}} - nazwa przestrzeni nazw strony, czy szablonu - opcjonalny,
* {{Code|Nazwa strony}} lub {{Code|Nazwa}} - nazwa strony bez nazwy przestrzeni nazw - wymagany.
; Dalsze parametry
* Dalsze parametry to są parametry szablonu, czy strony, której chcemy zobaczyć kod źródłowy.
== Przykład ==
; Przykład
{{Pre|{{s|ŹródłoNowiki|Przestrzeń{{=}}Template|Nazwa{{=}}S|M|parametr1{{((}}{{=}}{{))}}wartosc1|parametr2{{((}}{{=}}{{))}}wartosc2|parametr3{{((}}{{=}}{{))}}wartosc3}}}}
; Wynik
{{ŹródłoNowiki|Przestrzeń=Template|Nazwa=S|M|parametr1{{=}}wartosc1|parametr2{{=}}wartosc2|parametr3{{=}}wartosc3}}
== Błędy ==
Błędy należy zgłaszać na stronie {{Kwestie techniczne}}.
== Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) ==
<templatedata>
{
"params": {
"Miano przestrzeni nazw": {
"aliases": [
"Przestrzeń"
],
"description": "Nazwa przestrzeni nazw.",
"type": "string",
"suggested": true
},
"Nazwa strony": {
"aliases": [
"Nazwa"
],
"description": "Nazwa strony bez nazwy przestrzeni nazw.",
"type": "string",
"required": true
}
},
"description": "Podświetla składnię rozwijanych przez ten szablon szablonów, czy stron, względem podanych parametrów, jakie przyjmuje ten szablon."
}
</templatedata>
== Zobacz też ==
; Szablony wyświetlające, rozwinięty, wikitekst, wyświetlające znaki specjalne w postaci kodu HTML, umieszczany w ramce{{KodHTMLZnaku|:}} {{Tag|nowiki}}, przy pomocy języka {{LinkPediaGłówna|Lua}} w {{LinkPediaProjekt|Lua|Scribunto}}
* {{s|Nowiki}} - wyświetla w postaci czystego tekstu,
* {{s|PreNowiki}} - wyświetla w ramce pomiędzy znacznikami: {{Tag|pre}}, przy czym sąsiadujące spacje nie są skracane do jednej,
* {{s|PreLineNowiki}} - wyświetla w ramce pomiędzy znacznikami: {{Tag|pre}}, przy czym sąsiadujące spacje są skracane do jednej.
{{Szablony ramek formułujące kod}}
{{BrClear}}
<includeonly><!--
++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII -->
{{Kategorie
| Szablony wyświetlające rozwinięty wikikod
| Szablony symbolizujące wikikod
| Szablony ramek generujące wikikod
| Szablony ramek wyświetlające czysty wikikod
| Szablony ramek wyświetlające kod komputerowy
| Szablony specjalne
}}
</includeonly>
ifnqtszktyoxskljz0yo3ih2e1mygtl
Moduł:StronicowyParser/Potrzebne
828
58155
438985
438873
2022-08-28T17:52:27Z
Persino
2851
Scribunto
text/plain
local p={};
--zamykanie
local znak_127=mw.ustring.char(127);
function p.ZamieniajSzablonyStart(self,tablica_obiektow_strony_dany_modol)
local tab_self;
if(not tablica_obiektow_strony_dany_modol)then tab_self=self;else tab_self=tablica_obiektow_strony_dany_modol;end;
tab_self.numer_szablonu={};
tab_self.numer_szablonu["TEMPLATE"]=1;
tab_self.numer_szablonu["LINKW"]=1;
tab_self.numer_szablonu["LINKZ"]=1;
tab_self.numer_szablonu["VAR"]=1;
tab_self.numer_szablonu["NOWIKI"]=1;
tab_self.numer_szablonu["MATH"]=1;
tab_self.numer_szablonu["PRE"]=1;
end;
function p.ZamieniajSzablony(self,szablon,tablica_obiektow_strony,co,czy_nie_self)
local kod=znak_127.."'\"`UNIQ--"..(co or "TEMPLATE").."-"..self.numer_szablonu[co or "TEMPLATE"].."-QINU`\"'"..znak_127;
local tab_self;
if(not czy_nie_self)then tab_self=self;else tab_self=tablica_obiektow_strony;end;
tablica_obiektow_strony[co or "TEMPLATE"][tab_self.numer_szablonu[co or "TEMPLATE"]]=szablon;
tab_self.numer_szablonu[co or "TEMPLATE"]=tab_self.numer_szablonu[co or "TEMPLATE"]+1;
return kod;
end;
function p.OgolnyWzor(numer_szablonu,co)
if(not numer_szablonu)then
local wzor=znak_127.."'\"`UNIQ%-%-"..(co or "TEMPLATE").."%-(%d+)%-QINU`\"'"..znak_127;
return wzor;
end;
local wzor=znak_127.."'\"`UNIQ%-%-"..(co or "TEMPLATE").."%-"..numer_szablonu.."%-QINU`\"'"..znak_127;
return wzor;
end;
function p.KodujStroneObiektowa(self,tekst_artykulu,nazwa_modolu,tablica_obiektow_strony_dany_modol)
local czy_wlasne;
if(not tablica_obiektow_strony_dany_modol)then
if(not self.tablica_obiektow_strony)then self.tablica_obiektow_strony={};end;
if(not self.tablica_obiektow_strony[nazwa_modolu])then self.tablica_obiektow_strony[nazwa_modolu]={};end;
---
tablica_obiektow_strony_dany_modol=self.tablica_obiektow_strony[nazwa_modolu];
p:ZamieniajSzablonyStart(nil);
czy_wlasne=false;
else
p:ZamieniajSzablonyStart(tablica_obiektow_strony_dany_modol);
czy_wlasne=true;
end;
tablica_obiektow_strony_dany_modol["TEMPLATE"]={};
tablica_obiektow_strony_dany_modol["LINKW"]={};
tablica_obiektow_strony_dany_modol["LINKZ"]={};
tablica_obiektow_strony_dany_modol["VAR"]={};
tablica_obiektow_strony_dany_modol["NOWIKI"]={};
tablica_obiektow_strony_dany_modol["MATH"]={};
tablica_obiektow_strony_dany_modol["PRE"]={};
---
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Pp][Rr][Ee]%s*>(.-)</%s*[Pp][Rr][Ee]%s*>",function(szablon) return p:ZamieniajSzablony(szablon,tablica_obiektow_strony_dany_modol,"PRE",czy_wlasne);end);
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Nn][Oo][Ww][Ii][Kk][Ii]%s*>(.-)</%s*[Nn][Oo][Ww][Ii][Kk][Ii]%s*>",function(szablon) return p:ZamieniajSzablony(szablon,tablica_obiektow_strony_dany_modol,"NOWIKI",czy_wlasne);end);
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Mm][Aa][Tt][Hh]%s*>(.-)</%s*[Mm][Aa][Tt][Hh]%s*>",function(szablon) return p:ZamieniajSzablony(szablon,tablica_obiektow_strony_dany_modol,"MATH",czy_wlasne);end);
local ile_var=0;local ile_linkw=0;local ile_linkz=0;local ile_template=0;
repeat
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"(%[%[[^%[%]]+%]%])",function(szablon) return p:ZamieniajSzablony(szablon,tablica_obiektow_strony_dany_modol,"LINKW",czy_wlasne);end);
tekst_artykulu,ile_linkz=mw.ustring.gsub(tekst_artykulu,"(%[[^%[%]]+%])",function(szablon) return p:ZamieniajSzablony(szablon,tablica_obiektow_strony_dany_modol,"LINKZ",czy_wlasne);end);
tekst_artykulu,ile_var=mw.ustring.gsub(tekst_artykulu,"({{{[^{}]-}}})",function(szablon) return p:ZamieniajSzablony(szablon,tablica_obiektow_strony_dany_modol,"VAR",czy_wlasne);end);
tekst_artykulu,ile_template=mw.ustring.gsub(tekst_artykulu,"({{[^{}]-}})",function(szablon) return p:ZamieniajSzablony(szablon,tablica_obiektow_strony_dany_modol,"TEMPLATE",czy_wlasne);end);
until ((ile_var==0)and(ile_linkw==0)and(ile_linkz==0)and(ile_template==0));
return tekst_artykulu;
end;
function p.IteratorSzablonu(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony)
if(not tablica_obiektow_strony)then tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modolu];end;
local iter=mw.ustring.gmatch(tekst_rozwiniety_calego_artykulu,p.OgolnyWzor(nil,"(%a+)"));
local tak=nil;
local szablon=nil;
local iter2=nil;
local function Iterator()
local function IterMain()
local obiekt,kod=iter();
if((not obiekt)or(not kod))then return nil;end;
kod=tonumber(kod);
szablon=tablica_obiektow_strony[obiekt][kod];
tak=true;
iter2=p.IteratorSzablonu(self,szablon,nil,tablica_obiektow_strony);
return szablon,kod,obiekt;
end;
if(not tak)then
local szablon,kod,obiekt=IterMain();
return szablon,kod,obiekt;
else
local szablon,kod,obiekt=iter2();
if((not szablon)or(not kod)or(not obiekt))then
tak=nil;
local szablon,kod,obiekt=IterMain();
return szablon,kod,obiekt;
else
return szablon,kod,obiekt;
end;
end;
end;
return Iterator;
end;
function p.SkladajSzablonoweWywolanie(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony,__funkcja)
local techniczne_modul=require("Module:Techniczne");
local iterator=p.IteratorSzablonu(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony);
for szablon,kod,obiekt in iterator do
szablon=((__funkcja)and __funkcja(szablon,kod,obiekt) or szablon);
szablon=techniczne_modul["TekstBezOdwołańDoParametrówWeWzorze"](szablon);
tekst_rozwiniety_calego_artykulu=mw.ustring.gsub(tekst_rozwiniety_calego_artykulu,p.OgolnyWzor(kod,obiekt),szablon);
end;
return tekst_rozwiniety_calego_artykulu;
end;
--koniec zamykanie
function p.LiczonyHNumer()
local ulozenie=nil;
local ostatnie=0;
local h_numer_zapamietane=nil;
return function(h_numer,h_numer_nowe,jakie)
if(not h_numer_nowe)then
if(not jakie)then
if(h_numer==0)then
return h_numer_zapamietane;
elseif(h_numer<0)then
h_numer=math.abs(h_numer);
end;
else
if(h_numer==0)then
h_numer_zapamietane=0;
return 0;
end;
end;
if((ulozenie==nil)or(ulozenie>=h_numer))then
ulozenie=h_numer-1;
elseif(ostatnie+1<h_numer-ulozenie)then
ulozenie=h_numer-ostatnie-1;
end;
ostatnie=h_numer-ulozenie;
h_numer=h_numer-ulozenie;
h_numer_zapamietane=h_numer;
return h_numer;
else
ulozenie=h_numer-h_numer_nowe;
ostatnie=h_numer-ulozenie;
return h_numer_nowe;
end;
end;
end;
function p.PoziomAdresu(adres)
local lens=#adres;
local i=1;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
end;
end;
return i;
end;
function p.NazwaNadStrony(adres,numer)
if((numer)and(numer==1))then return nil;end;
if((not numer)and(numer<1)or(numer~=math.floor(numer)))then return adres;end;
local lens=#adres;
local i=1;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
end;
if(i==numer)then
return mw.ustring.sub(adres,1,p-1);
end;
end;
return adres;
end;
function p.SubNazwaNadStrony(adres,numer,krok)
if((not numer)or(numer<1)or(numer~=math.floor(numer)))then return adres;end;
krok=krok or 1;
if((krok<1)or(krok~=math.floor(krok)))then return adres;end;
local lens=#adres;
local i=1;
local a=nil;local b=nil;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
if(i==numer)then
if(not a)then a=p+1;end;
end;
if(i==numer+krok)then
if(not b)then b=p-1;break;end;
end;
end;
end;
if(not a)then a=1;end;
if(not b)then b=lens;end;
return mw.ustring.sub(adres,a,b);
end;
function p.ParametryPudelkaKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
local nazwa_przestrzeni=self.args["nazwa przestrzeni nazw"];
local nazwa_jednostki=self.args["nazwa jednostki"];
if(((nazwa_przestrzeni)and(nazwa_jednostki))or((nazwa_przestrzeni)and(not nazwa_jednostki))or((not nazwa_przestrzeni)and(nazwa_jednostki)))then
if(nazwa_jednostki)then
local html_modul=require("Module:Html");
self.naglowek=html_modul["NagłówekStronyAdresu"](nazwa_jednostki,true);
self.parametry=html_modul["ParametryStronyAdresu"](nazwa_jednostki);
end;
local pudelko_modul=require("Module:Pudełko");
local nazwa_jednostki=pudelko_modul["Pełna nazwa jednostki 2"](frame);
local nazwy_modul=require("Module:Nazwy");
self.nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki);
self.nazwa_ksiazki=nazwy_modul["NAZWAKSIĄŻKI"](nazwa_jednostki);
self.nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](nazwa_jednostki);
else
local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
self.nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
self.nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
self.nazwa_artykulu=tabela_listy_danych_analizy_ksiazki.nazwa_artykulu;
end;
end;
function p.TabelaListyArtykulowKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
local nazwa_przestrzeni;local nazwa_ksiazki;
if(tabela_listy_danych_analizy_ksiazki.zastepczy)then
nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_przestrzeni;
nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_ksiazki;
else
nazwa_przestrzeni=self.nazwa_przestrzeni;
nazwa_ksiazki=self.nazwa_ksiazki;
end;
local lista_artykulow_w_ksiazkach_w_danej_przestrzeni=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu[nazwa_przestrzeni];
if(not lista_artykulow_w_ksiazkach_w_danej_przestrzeni)then return nil;end;
local tab_lista_artykulow_w_ksiazce=lista_artykulow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
return tab_lista_artykulow_w_ksiazce.spis;
end;
function p.AnalizujArgumentySzablonu(self,frame)
local parametry_modul=require("Module:Parametry");
self.args=parametry_modul.PobierzArgsParametry(frame,true);
end;
function p.Args(self)
return self.args;
end;
function p.PelnaNazwaKsiazki(self,frame)
return ((self.nazwa_przestrzeni~="")and(self.nazwa_przestrzeni..":") or "")..self.nazwa_ksiazki
end;
function p.NazwaArtykuluKsiazki(self,frame)
return self.nazwa_artykulu..(self.parametry and ("?"..self.parametry) or "")..(self.naglowek and ("#"..self.naglowek) or "");
end;
function p.ObliczeniaInformacje(self,frame)
p:AnalizujArgumentySzablonu(frame);
p:ParametryPudelkaKsiazki(frame);
local tab_lista_artykulow_w_ksiazce=p:TabelaListyArtykulowKsiazki(frame);
if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.CzyTak(self.args["nagłówek"]);
local tab_artykul_bez_naglowka=(not naglowek) and {} or nil;
self.tab_artykul={};
local html_modul=require("Module:Html");
for _,tab_lista in ipairs(tab_lista_artykulow_w_ksiazce)do
if(tab_lista[2])then
for _,artykul_w_bazie in ipairs(tab_lista[2])do
local artykul=(not naglowek) and html_modul["NazwaStronyAdresu"](artykul_w_bazie[1][1] or artykul_w_bazie[1]) or (artykul_w_bazie[1][1] or artykul_w_bazie[1]);
if(naglowek or not tab_artykul_bez_naglowka[artykul])then
if(not naglowek)then
tab_artykul_bez_naglowka[artykul]=true;
end;
table.insert(self.tab_artykul, parametry_modul.TypeTable(artykul_w_bazie[1]) and {artykul,artykul_w_bazie[1][2],} or artykul);
end;
end;
end;
end;
self.len_tab_artykul=#self.tab_artykul;
return true;
end;
function p.PomiedzyArtykul(self,frame)
self.numer=tonumber(frame.args[1]) or 1;
self.reszta=math.fmod(self.numer,self.len_tab_artykul-2)+1;
return self.tab_artykul[self.reszta+1];
end;
function p.LosowyArtykul(self,frame)
self.numer=tonumber(frame.args[1]) or 1;
self.reszta=math.fmod(self.numer,self.len_tab_artykul)+1;
return self.tab_artykul[self.reszta];
end;
function p.TOCSilnik(lista_elementow_spisu_tresci, atrybuty)
if(lista_elementow_spisu_tresci==nil)then return nil;end;
local twor_listy="";
local liczba_ulozenia_w_menu_spisu_tresci=lista_elementow_spisu_tresci[1][2];
local poziom=1;
local num={};
for licznik, element_w_tablicy in ipairs(lista_elementow_spisu_tresci) do
if(licznik==1)then
num[#num+1]=1;
twor_listy=(atrybuty and '<ul '..atrybuty..'>' or '<ul>')..'<li class=\"toclevel-1 tocsection-1\">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
else
if(element_w_tablicy[2]==liczba_ulozenia_w_menu_spisu_tresci)then
num[#num]=num[#num]+1;
twor_listy=twor_listy..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
elseif(element_w_tablicy[2]>liczba_ulozenia_w_menu_spisu_tresci)then
num[#num+1]=1;
poziom=poziom+1;
twor_listy=twor_listy..'<ul><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
elseif(element_w_tablicy[2]<liczba_ulozenia_w_menu_spisu_tresci)then
local num_length=#num;
for i=num_length,num_length-liczba_ulozenia_w_menu_spisu_tresci+element_w_tablicy[2]+1,-1 do
table.remove(num);
end;
num[#num]=num[#num]+1;
local roznica_poziomow=liczba_ulozenia_w_menu_spisu_tresci-element_w_tablicy[2];
poziom=poziom-roznica_poziomow;
twor_listy=twor_listy..mw.ustring.rep('</li></ul>',roznica_poziomow)..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'
.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
end;
end;
end;
twor_listy=twor_listy..mw.ustring.rep('</li></ul>',liczba_ulozenia_w_menu_spisu_tresci or 0);
return twor_listy;
end;
function p.TOC(frame,lista_elementow_spisu_tresci,czy_nie_aktualny,rozciagnij)
local twor_listy=p.TOCSilnik(lista_elementow_spisu_tresci);
local parametry_modul=require("Module:Parametry");
local frame=frame or mw.getCurrentFrame();
local args=frame.args;
local toc_czy_tocramka=parametry_modul.CzyTak(args["toc"]);
if(not toc_czy_tocramka)then
local czy_ukryte=twor_listy;
local funkcja=args["funkcja"] or "UkrytaWikitabelowaListaMenu";
local wysokosc=parametry_modul.CzyTak(args["wysokość"]) and args["wysokość"] or "700px";
local szerokosc=parametry_modul.CzyTak(args["szerokość"])and args["szerokość"] or "100%";
local spis_tresci=parametry_modul.CzyTak(args["spis treści"])and args["spis treści"] or "Spis treści";
local spis_artykulu=parametry_modul.CzyTak(args["spis artykułu"]);
local czy_bez_arginesu_dolnego=parametry_modul.CzyTak(args["bez marginesu dolnego"]);
local czy_z_marginesami_ramki=parametry_modul.CzyTak(args["z marginesami ramki"]);
local zawartosc_z_marginesami=parametry_modul.CzyTak(args["zawartość z marginesami"]);
twor_listy='<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..' mw-overflow-x mw-overflow-y mw-not-overflow-x" style="'..(zawartosc_z_marginesami and ("padding:"..args["zawartość z marginesami"])..";" or "")..'width:'..szerokosc..';max-height:'..wysokosc..';overflow:auto;padding-right:5px;box-sizing:border-box;">'..(czy_ukryte or "<ul></ul>").."</div>";
local wikikod_menu='{{Tabela nawigacyjna|styl='..((czy_z_marginesami_ramki) and ("margin:"..args["z marginesami ramki"])..";" or "")..((czy_bez_arginesu_dolnego) and 'margin-bottom:0;' or "")..(czy_ukryte and "" or "visibility:hidden")..';font-size:14px;background-color:white;line-height:1.2em;width:'..(rozciagnij and "100%" or "auto")..';box-sizing:border-box'..(spis_artykulu and ';border:#aaa 1px solid' or '')..'|tytuł=<div style="text-align:left;font-size:14px;background-color:white;line-height:1.2em;'..(spis_artykulu and ';border-bottom:#aaa 1px solid' or '')..';white-space:nowrap;min-width:130px;">'..spis_tresci..'</div>|spis='..twor_listy..'|funkcja='..funkcja..'|klasa=spis_treści}}';
local rozwiniety_wikikod=frame:preprocess(wikikod_menu);
return rozwiniety_wikikod;
else
return (twor_listy and ('\n=Spis treści=\n<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..'" style="margin-left:10px">'..twor_listy..'</div>') or "");
end;
end;
function p.AnalizaSzablonuStronicowegoParsera(self,uzyskano_w_wyniku_parsowania_wywolanie_szablonu,kod,obiekt,nazwa_modolu,__Funkcja, __Funkcja2)
if(obiekt~="TEMPLATE")then return;end;
uzyskano_w_wyniku_parsowania_wywolanie_szablonu=mw.ustring.gsub(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,"\n+","");
local tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modolu];
--mw.logObject(tablica_obiektow_strony,nazwa_modolu);
local function GlownaFunkcja(wywolanie,oznaczenie_szablonu)
local techniczne_modul=require("Module:Techniczne");
local tabela_parametrow_szablonu=techniczne_modul["ParsujWywołanieSzablonu"](wywolanie);
if(not tabela_parametrow_szablonu)then return nil;end;
__Funkcja(tabela_parametrow_szablonu,wywolanie);
if(__Funkcja2)then
__Funkcja2(oznaczenie_szablonu,wywolanie,tabela_parametrow_szablonu,uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
end;
end;
GlownaFunkcja(uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
end;
function p.AnalizujLinkSzablonyOrazLinki(wyzyskane_wywolanie_szablonu_spis_tresci,nazwa_przestrzeni,nazwa_ksiazki,__FUNKCJA)
local pozycja_artykulu=nil;local nazwa=nil;
local pozycja_artykulu,nazwa=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)|([^%[%]{}]+)%]%]$")
if(not((pozycja_artykulu)and(nazwa)))then
pozycja_artykulu=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)%]%]$");
end;
local function Artykul(strona)
local nazwy_modul=require("Module:Nazwy");
local html_modul=require("Module:Html");
local parametry=html_modul["ParametryStronyAdresu"](strona);
local naglowek=html_modul["NagłówekStronyAdresu"](strona);
local nazwa_przestrzeni_strony=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_ksiazki_strony=nazwy_modul["NAZWAKSIĄŻKI"](strona);
local nazwa_artykulu_strony=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona);
if((nazwa_przestrzeni_strony==nazwa_przestrzeni)and(nazwa_ksiazki_strony==nazwa_ksiazki))then
return nazwa_artykulu_strony..(parametry and ("?"..parametry) or "")..(naglowek and ("#"..naglowek) or "");
else
return;
end;
end;
local id=nil;
local parametry;
local czy_pozycja_artykulu=nil;
if(not pozycja_artykulu)then
local link_szablon=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"({{[^{}]+}})");
if(link_szablon)then
local techniczne_modul=require("Module:Techniczne");
parametry=techniczne_modul["ParsujWywołanieSzablonu"](link_szablon);
local szablon=parametry[0];
if(szablon=="SpisTreści")then
pozycja_artykulu=parametry[1];
id=true;
elseif(szablon=="Sekcja referencyjna")then
local podstrona=parametry[3] or parametry["podstrona"];
local strona=parametry[1] or parametry["strona"];
if(not strona)then
local nazwy_modul=require("Module:Nazwy");
pozycja_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"]();
else
pozycja_artykulu=(((podstrona) and (podstrona~="")) and (podstrona..((not mw.ustring.match(strona,"^#")) and "/" or "")) or "")..strona;
end;
nazwa=parametry["nazwa"] or parametry[2];
else
if(szablon=="Link wewnętrzny")then
local strona=parametry["strona"];
nazwa=parametry["nazwa"];
pozycja_artykulu=Artykul(strona);
czy_pozycja_artykulu=strona;
elseif(szablon=="LinkOgólne")then
local strona=parametry[1];
nazwa=parametry[2];
local miano_przestrzeni_nazw=parametry["miano przestrzeni nazw"];
if(miano_przestrzeni_nazw)then
czy_pozycja_artykulu=((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw..":") or "")..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
else
pozycja_artykulu=Artykul(parametry[1])
czy_pozycja_artykulu=parametry[1];
end;
elseif(szablon=="LinkGłówna")then
pozycja_artykulu=Artykul(parametry[1])
czy_pozycja_artykulu=parametry[1];
nazwa=parametry[2];
elseif((szablon=="LinkWikijunior")or(szablon=="LinkWikijunior2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.Wikijunior..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((szablon=="LinkProjekt")or(szablon=="LinkProjekt2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.Wikibooks..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((szablon=="LinkUżytkownik")or(szablon=="LinkUżytkownik2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.User..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((__FUNKCJA)and(__FUNKCJA(parametry)))then
return nil,nil,false,parametry,true;
end;
end;
end;
else
local parametry_modul=require("Module:Parametry");
pozycja_artykulu=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=pozycja_artykulu,[2]="tak",});
local czy_pozycja_artykulu=mw.ustring.match(pozycja_artykulu,"^/(.-)/+$") or mw.ustring.match(pozycja_artykulu,"^/(.+)$");
if(czy_pozycja_artykulu)then
if(parametry_modul["CzyTakCiąg"](czy_pozycja_artykulu))then
pozycja_artykulu=czy_pozycja_artykulu;
else
pozycja_artykulu=nil;
end;
else
local czy_pozycja_artykulu=pozycja_artykulu;
pozycja_artykulu=Artykul(pozycja_artykulu);
if((not pozycja_artykulu)and(czy_pozycja_artykulu)and(not mw.ustring.match(czy_pozycja_artykulu,"[{}%[%]|]")))then
local kod_jezyka_koncowy="pl";
local kod_projektu_koncowy="b";
local linki_modul=require("Module:Linki");
local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=linki_modul.KodyNazwyStrony(czy_pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy,{});
return nil,{nazwa_strony_linku,nazwa,kod_jezyka_koncowy,kod_projektu_koncowy,},false,nil,false;
else
return {pozycja_artykulu,nazwa},nil,false,nil,false;
end;
end;
end;
if((not pozycja_artykulu)and(czy_pozycja_artykulu))then
local wiki_modul=require("Module:Wiki");
local kod_jezyka_koncowy,kod_projektu_koncowy=wiki_modul.KodyWiki(parametry["klucz projektu"],parametry["kod jezyka"],parametry["kod projektu"]);
local linki_modul=require("Module:Linki");
local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=linki_modul.KodyNazwyStrony(czy_pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy,{});
return nil,{nazwa_strony_linku,parametry[2],kod_jezyka_koncowy,kod_projektu_koncowy},false,nil,false;
end;
return {pozycja_artykulu,nazwa},nil,id,parametry,false;
end;
function p.NumerObiektu(frame, nazwa_obiektu)
local pf=frame:getParent();
local parametry_modul=require("Module:Parametry");
local uchwyt_obiektu=(frame.args["uchwyt"])and parametry_modul["Odstępy"](frame.args["uchwyt"]) or nil;
local nazwa_strony;
local html_modul=require("Module:Html");
local nazwy_modul=require("Module:Nazwy");
local ksiazkowe_modul=require("Module:Książkowe");
local techniczne_modul=require("Module:Techniczne");
local nazwa_przestrzeni;local nazwa_ksiazki;local nazwa_artykulu;
nazwa_artykulu=frame.args["nazwa artykułu"];
nazwa_ksiazki=frame.args["nazwa książki"];
local tabela_listy_danych_analizy_ksiazki=mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
if(not parametry_modul.CzyTak{[1]=tabela_listy_danych_analizy_ksiazki,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
local czy_aktualna_strona=nil;
if((not nazwa_artykulu)and(not nazwa_ksiazki))then
czy_aktualna_strona=1;
nazwa_strony="";
elseif((nazwa_artykulu)and(not nazwa_ksiazki))then
czy_aktualna_strona=2;
nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," ");
nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
else
nazwa_ksiazki=ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"](nazwa_ksiazki);
nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_ksiazki);
nazwa_ksiazki=ksiazkowe_modul["NazwaKsiążki"](nazwa_ksiazki);
nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," ");
nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
end;
local link = function(adres_linku,nazwa_linku,klasa,styl)
local czy_klasa=parametry_modul.CzyTak(klasa);
local czy_styl=parametry_modul.CzyTak(styl);
if(czy_klasa or czy_styl)then
spanramka=mw.html.create('span');
if(czy_klasa)then spanramka:attr("class",klasa);end;
if(czy_styl)then spanramka:attr('style',styl);end;
spanramka:wikitext(nazwa_linku);
local kod_html=spanramka:allDone();
return "[["..adres_linku.."|"..tostring(kod_html).."]]";
else
return "[["..adres_linku.."|"..nazwa_linku.."]]";
end;
end;
local wzor = function(uchwyt,numeracja,styl_main,styl_odstepu,pole_odstepu,styl_wzoru,klasa_wzoru,wzor,opis,opis2,klasa_opisu,styl_opisu,styl_opisu_2,wzor_opisu,wzor_opisu_2,styl_alternatywy_opisu,styl_alternatywy_opisu_2,pozycja_numeracji,klasa_numeracji,styl_numeracji,bez_automatu)
divramka=mw.html.create('div');
local parametry_modul=require("Module:Parametry");
local czy_pozycja_numeracji_prawa=parametry_modul.CzyTak(pozycja_numeracji);
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',"wzór_"..uchwyt);
else
if(numeracja)then
divramka:attr('id',"wzór_"..numeracja);
else
divramka:attr('id',"wzór_"..uchwyt);
end;
end;
end;
if(parametry_modul.CzyTak(styl_main))then
divramka:attr('style',styl_main);
end;
local uchwyt_fun=function()
if(parametry_modul.CzyTak(uchwyt))then
local divuchwytramka=mw.html.create('div');
divuchwytramka:attr('class',klasa_numeracji);
divuchwytramka:attr('style',styl_numeracji);
if(parametry_modul.CzyTak(bez_automatu))then
divuchwytramka:wikitext('(',uchwyt..")");
else
if(numeracja)then
divuchwytramka:wikitext('('..numeracja..")");
else
divuchwytramka:wikitext("(Niedopasowany uchwyt: "..uchwyt..")");
end;
end;
divramka:node(divuchwytramka);
end;
end;
local pole_odstepu_fun=function()
divramka:addClass("wzory");
local divramka2=mw.html.create('div');
divramka2:attr('style',styl_odstepu);
divramka2:wikitext(pole_odstepu);
divramka:node(divramka2);
end;
local opis_fun=function(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu)
if(parametry_modul.CzyTak(opis))then
local divramka5=mw.html.create('div')
divramka5:attr('class',klasa_opisu)
divramka5:attr('style',styl_opisu)
divramka5:wikitext(wzor_opisu)
divramka:node(divramka5)
else
local divramka5=mw.html.create('div');
divramka5:attr('style',styl_alternatywy_opisu);
divramka:node(divramka5)
end;
end;
if(not czy_pozycja_numeracji_prawa)then
uchwyt_fun();
else
pole_odstepu_fun();
end;
opis_fun(opis2,styl_opisu_2,wzor_opisu_2,styl_alternatywy_opisu_2);
local divramka4=mw.html.create('div');
divramka4:attr('class',klasa_wzoru);
divramka4:attr('style',styl_wzoru);
divramka4:wikitext(wzor);
divramka:node(divramka4);
opis_fun(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu);
if(czy_pozycja_numeracji_prawa)then
uchwyt_fun();
else
pole_odstepu_fun();
end;
return tostring(divramka:allDone());
end;
local rysunek=function(uchwyt,numeracja,opis, rysunek, pozycja,rozmiar,klasa,styl,bez_automatu)
local divramka=mw.html.create('div');
divramka:attr('class',klasa);
divramka:attr('style',styl);
local czy_uchwyt=parametry_modul.CzyTak(uchwyt);
if(czy_uchwyt)then
if(numeracja)then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',"rysunek_"..uchwyt);
else
divramka:attr('id',"rysunek_"..numeracja);
end;
else
divramka:attr('id',"rysunek_"..uchwyt);
end;
end;
local czy_opis=parametry_modul.CzyTak(opis);
local wywolanie_rysunku="[[File:"..((rysunek)and rysunek or "Przykładowy rysunek.svg").."|thumb|"..(pozycja or "right").."|"..(rozmiar or "200px")..((czy_uchwyt or czy_opis)and ("|"..((parametry_modul.CzyTak(uchwyt))and "(Rys. "..((numeracja)and (parametry_modul.CzyTak(bez_automatu) and uchwyt or numeracja) or "Niedopasowany uchwyt: "..uchwyt)..")" or "").." "..opis) or "").."]]";
divramka:wikitext(wywolanie_rysunku);
return tostring(divramka:allDone());
end;
local wypowiedzenie = function(uchwyt,przedrostek,numeracja,klasa,styl,przedrostek2,rodzaj,kogo,czego,jakie,styl_naglowka,styl_tekstu,tekst,bez_automatu)
local divramka=mw.html.create('div');
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',przedrostek.."_"..uchwyt);
else
divramka:attr('id',przedrostek.."_"..(numeracja or uchwyt));
end;
end;
divramka:attr('class',klasa);
divramka:attr('style',styl);
local wikitext="";
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
wikitext="("..przedrostek2.." "..uchwyt..")";
else
if(numeracja)then
wikitext="("..przedrostek2.." "..numeracja..")";
else
wikitext="("..przedrostek2.." Niedopawany uchwyt: "..uchwyt..")";
end;
end;
end;
if(parametry_modul.CzyTak(styl_naglowka))then
local spanramka=mw.html.create('span');
spanramka:attr('style',styl_naglowka);
spanramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
divramka:node(spanramka);
else
divramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
end;
divramka:wikitext('<BR>');
if(parametry_modul.CzyTak(styl_tekstu))then
local spanramka=mw.html.create('span');
spanramka:attr('style',styl_tekstu);
spanramka:wikitext(tekst);
divramka:node(spanramka);
else
divramka:wikitext(tekst);
end;
return tostring(divramka:allDone());
end;
local punkty = function(uchwyt,numeracja,przedrostek_id,klasa,styl,prefiks,bez_automatu)
local spanramka=mw.html.create('sup');
spanramka:attr('style',klasa);
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
spanramka:attr('id',przedrostek_id.."_"..uchwyt);
else
if(parametry_modul.CzyTak(numeracja))then
spanramka:attr('id',przedrostek_id.."_"..numeracja);
else
spanramka:attr('id',przedrostek_id.."_"..uchwyt);
end;
end;
end;
spanramka:attr('style',styl);
local smallramka=mw.html.create('small');
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
smallramka:wikitext(prefiks..": "..uchwyt);
else
if(parametry_modul.CzyTak(numeracja))then
smallramka:wikitext('['..prefiks..": "..numeracja..']');
else
smallramka:wikitext('['..prefiks..": Niedopsowany uchwyt: "..uchwyt..']');
end;
end;
else
smallramka:wikitext('['..prefiks..": Niedopasowany uchwyt: brak uchwytu]");
end;
spanramka:node(smallramka);
return tostring(spanramka:allDone());
end;
local nazwa_strony_fun=function(nazwa_strony)
if((tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni)
and(tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki==nazwa_ksiazki)
and (tabela_listy_danych_analizy_ksiazki.nazwa_artykulu==nazwa_artykulu))then
return "";
end;
return nazwa_strony;
end;
if(parametry_modul.CzyTak(frame.args["bez automatu"]))then
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
if(uchwyt_obiektu)then
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"]..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
else
return "("..link(nazwa_strony.."#"..frame.args["id"].."_".."Nieznany uchwyt",frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
end;
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,uchwyt_obiektu,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,uchwyt_obiektu,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],uchwyt_obiektu,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,uchwyt_obiektu,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return uchwyt_obiektu;
end;
else
return uchwyt_obiektu;
end;
end;
local tabela_listy_uchwytow_i_numeracji_na_stronie;
if(czy_aktualna_strona==nil)then
local dane_analizy_artykulu=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu;
if(dane_analizy_artykulu)then
local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni=dane_analizy_artykulu[nazwa_przestrzeni];
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni)then
local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
if(lista_artykolow)then
local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
if(tabela_listy_analizy_na_stronie)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
end;
end;
end;
end;
end;
elseif(czy_aktualna_strona==1)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_danych_analizy_ksiazki.tablica_aktualnego_artykolu;
if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_na_stronie,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
elseif(czy_aktualna_strona==2)then
tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_ksiazki;
if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
if(lista_artykolow)then
local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
if(tabela_listy_analizy_na_stronie)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
end;
end;
end;
end;
if(tabela_listy_uchwytow_i_numeracji_na_stronie)then
local spis_uchwytow=tabela_listy_uchwytow_i_numeracji_na_stronie[nazwa_obiektu];
if(spis_uchwytow)then
if((uchwyt_obiektu)and(uchwyt_obiektu~=""))then
for _, dany_artykul in ipairs(spis_uchwytow)do
if(dany_artykul[1]==uchwyt_obiektu)then
if(nazwa_obiektu~="Śródtytuł")then
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
if(not dany_artykul[2])then
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
end;
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..dany_artykul[2],frame.args["przedrostek"]..dany_artykul[2],frame.args["klasa"],frame.args["styl"])..")";
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,dany_artykul[2],frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,dany_artykul[2],frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],dany_artykul[2],frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,dany_artykul[2],frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
end;
else
return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
end;
else
if(dany_artykul[2])then
local tytul_szablonu=frame.args["nazwa szablonu"] or techniczne_modul.NazwaSzablonu(frame:getParent():getTitle());
if(tytul_szablonu=="LinkŚródtytuł")then
return link(dany_artykul[2][1],dany_artykul[2][2],frame.args["klasa"],frame.args["styl"])
elseif(tytul_szablonu=="LinkŚródtytułTutaj")then
return link(dany_artykul[2][1],"tutaj",frame.args["klasa"],frame.args["styl"])
end;
end;
end;
end;
end;
end;
end;
end;
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,nil,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,nil,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],nil,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,nil,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
else
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
end;
return p;
q89xmux734gr5zrwv27t09g72y23x02
438986
438985
2022-08-28T18:11:41Z
Persino
2851
Scribunto
text/plain
local p={};
--zamykanie
local znak_127=mw.ustring.char(127);
function p.ZamieniajSzablony(self,szablon,tablica_obiektow_strony,co,czy_nie_self)
local kod=znak_127.."'\"`UNIQ--"..(co or "TEMPLATE").."-"..self.numer_szablonu[co or "TEMPLATE"].."-QINU`\"'"..znak_127;
local tab_self;
if(not czy_nie_self)then tab_self=self;else tab_self=tablica_obiektow_strony;end;
tablica_obiektow_strony[co or "TEMPLATE"][tab_self.numer_szablonu[co or "TEMPLATE"]]=szablon;
tab_self.numer_szablonu[co or "TEMPLATE"]=tab_self.numer_szablonu[co or "TEMPLATE"]+1;
return kod;
end;
function p.OgolnyWzor(numer_szablonu,co)
if(not numer_szablonu)then
local wzor=znak_127.."'\"`UNIQ%-%-"..(co or "TEMPLATE").."%-(%d+)%-QINU`\"'"..znak_127;
return wzor;
end;
local wzor=znak_127.."'\"`UNIQ%-%-"..(co or "TEMPLATE").."%-"..numer_szablonu.."%-QINU`\"'"..znak_127;
return wzor;
end;
function p.KodujStroneObiektowa(self,tekst_artykulu,nazwa_modolu,tablica_obiektow_strony_dany_modol)
local czy_wlasne;
function ZamieniajSzablonyStart(self,tablica_obiektow_strony_dany_modol)
local tab_self;
if(not tablica_obiektow_strony_dany_modol)then tab_self=self;else tab_self=tablica_obiektow_strony_dany_modol;end;
tab_self.numer_szablonu={};
tab_self.numer_szablonu["TEMPLATE"]=1;
tab_self.numer_szablonu["LINKW"]=1;
tab_self.numer_szablonu["LINKZ"]=1;
tab_self.numer_szablonu["VAR"]=1;
tab_self.numer_szablonu["NOWIKI"]=1;
tab_self.numer_szablonu["MATH"]=1;
tab_self.numer_szablonu["PRE"]=1;
end;
if(not tablica_obiektow_strony_dany_modol)then
if(not self.tablica_obiektow_strony)then self.tablica_obiektow_strony={};end;
if(not self.tablica_obiektow_strony[nazwa_modolu])then self.tablica_obiektow_strony[nazwa_modolu]={};end;
---
tablica_obiektow_strony_dany_modol=self.tablica_obiektow_strony[nazwa_modolu];
ZamieniajSzablonyStart(self,nil);
czy_wlasne=false;
else
ZamieniajSzablonyStart(self,tablica_obiektow_strony_dany_modol);
czy_wlasne=true;
end;
tablica_obiektow_strony_dany_modol["TEMPLATE"]={};
tablica_obiektow_strony_dany_modol["LINKW"]={};
tablica_obiektow_strony_dany_modol["LINKZ"]={};
tablica_obiektow_strony_dany_modol["VAR"]={};
tablica_obiektow_strony_dany_modol["NOWIKI"]={};
tablica_obiektow_strony_dany_modol["MATH"]={};
tablica_obiektow_strony_dany_modol["PRE"]={};
---
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Pp][Rr][Ee]%s*>(.-)</%s*[Pp][Rr][Ee]%s*>",function(szablon) return p:ZamieniajSzablony(szablon,tablica_obiektow_strony_dany_modol,"PRE",czy_wlasne);end);
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Nn][Oo][Ww][Ii][Kk][Ii]%s*>(.-)</%s*[Nn][Oo][Ww][Ii][Kk][Ii]%s*>",function(szablon) return p:ZamieniajSzablony(szablon,tablica_obiektow_strony_dany_modol,"NOWIKI",czy_wlasne);end);
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Mm][Aa][Tt][Hh]%s*>(.-)</%s*[Mm][Aa][Tt][Hh]%s*>",function(szablon) return p:ZamieniajSzablony(szablon,tablica_obiektow_strony_dany_modol,"MATH",czy_wlasne);end);
local ile_var=0;local ile_linkw=0;local ile_linkz=0;local ile_template=0;
repeat
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"(%[%[[^%[%]]+%]%])",function(szablon) return p:ZamieniajSzablony(szablon,tablica_obiektow_strony_dany_modol,"LINKW",czy_wlasne);end);
tekst_artykulu,ile_linkz=mw.ustring.gsub(tekst_artykulu,"(%[[^%[%]]+%])",function(szablon) return p:ZamieniajSzablony(szablon,tablica_obiektow_strony_dany_modol,"LINKZ",czy_wlasne);end);
tekst_artykulu,ile_var=mw.ustring.gsub(tekst_artykulu,"({{{[^{}]-}}})",function(szablon) return p:ZamieniajSzablony(szablon,tablica_obiektow_strony_dany_modol,"VAR",czy_wlasne);end);
tekst_artykulu,ile_template=mw.ustring.gsub(tekst_artykulu,"({{[^{}]-}})",function(szablon) return p:ZamieniajSzablony(szablon,tablica_obiektow_strony_dany_modol,"TEMPLATE",czy_wlasne);end);
until ((ile_var==0)and(ile_linkw==0)and(ile_linkz==0)and(ile_template==0));
return tekst_artykulu;
end;
function p.IteratorSzablonu(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony)
if(not tablica_obiektow_strony)then tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modolu];end;
local iter=mw.ustring.gmatch(tekst_rozwiniety_calego_artykulu,p.OgolnyWzor(nil,"(%a+)"));
local tak=nil;
local szablon=nil;
local iter2=nil;
local function Iterator()
local function IterMain()
local obiekt,kod=iter();
if((not obiekt)or(not kod))then return nil;end;
kod=tonumber(kod);
szablon=tablica_obiektow_strony[obiekt][kod];
tak=true;
iter2=p.IteratorSzablonu(self,szablon,nil,tablica_obiektow_strony);
return szablon,kod,obiekt;
end;
if(not tak)then
local szablon,kod,obiekt=IterMain();
return szablon,kod,obiekt;
else
local szablon,kod,obiekt=iter2();
if((not szablon)or(not kod)or(not obiekt))then
tak=nil;
local szablon,kod,obiekt=IterMain();
return szablon,kod,obiekt;
else
return szablon,kod,obiekt;
end;
end;
end;
return Iterator;
end;
function p.SkladajSzablonoweWywolanie(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony,__funkcja)
local techniczne_modul=require("Module:Techniczne");
local iterator=p.IteratorSzablonu(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony);
for szablon,kod,obiekt in iterator do
szablon=((__funkcja)and __funkcja(szablon,kod,obiekt) or szablon);
szablon=techniczne_modul["TekstBezOdwołańDoParametrówWeWzorze"](szablon);
tekst_rozwiniety_calego_artykulu=mw.ustring.gsub(tekst_rozwiniety_calego_artykulu,p.OgolnyWzor(kod,obiekt),szablon);
end;
return tekst_rozwiniety_calego_artykulu;
end;
--koniec zamykanie
function p.LiczonyHNumer()
local ulozenie=nil;
local ostatnie=0;
local h_numer_zapamietane=nil;
return function(h_numer,h_numer_nowe,jakie)
if(not h_numer_nowe)then
if(not jakie)then
if(h_numer==0)then
return h_numer_zapamietane;
elseif(h_numer<0)then
h_numer=math.abs(h_numer);
end;
else
if(h_numer==0)then
h_numer_zapamietane=0;
return 0;
end;
end;
if((ulozenie==nil)or(ulozenie>=h_numer))then
ulozenie=h_numer-1;
elseif(ostatnie+1<h_numer-ulozenie)then
ulozenie=h_numer-ostatnie-1;
end;
ostatnie=h_numer-ulozenie;
h_numer=h_numer-ulozenie;
h_numer_zapamietane=h_numer;
return h_numer;
else
ulozenie=h_numer-h_numer_nowe;
ostatnie=h_numer-ulozenie;
return h_numer_nowe;
end;
end;
end;
function p.PoziomAdresu(adres)
local lens=#adres;
local i=1;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
end;
end;
return i;
end;
function p.NazwaNadStrony(adres,numer)
if((numer)and(numer==1))then return nil;end;
if((not numer)and(numer<1)or(numer~=math.floor(numer)))then return adres;end;
local lens=#adres;
local i=1;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
end;
if(i==numer)then
return mw.ustring.sub(adres,1,p-1);
end;
end;
return adres;
end;
function p.SubNazwaNadStrony(adres,numer,krok)
if((not numer)or(numer<1)or(numer~=math.floor(numer)))then return adres;end;
krok=krok or 1;
if((krok<1)or(krok~=math.floor(krok)))then return adres;end;
local lens=#adres;
local i=1;
local a=nil;local b=nil;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
if(i==numer)then
if(not a)then a=p+1;end;
end;
if(i==numer+krok)then
if(not b)then b=p-1;break;end;
end;
end;
end;
if(not a)then a=1;end;
if(not b)then b=lens;end;
return mw.ustring.sub(adres,a,b);
end;
function p.ParametryPudelkaKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
local nazwa_przestrzeni=self.args["nazwa przestrzeni nazw"];
local nazwa_jednostki=self.args["nazwa jednostki"];
if(((nazwa_przestrzeni)and(nazwa_jednostki))or((nazwa_przestrzeni)and(not nazwa_jednostki))or((not nazwa_przestrzeni)and(nazwa_jednostki)))then
if(nazwa_jednostki)then
local html_modul=require("Module:Html");
self.naglowek=html_modul["NagłówekStronyAdresu"](nazwa_jednostki,true);
self.parametry=html_modul["ParametryStronyAdresu"](nazwa_jednostki);
end;
local pudelko_modul=require("Module:Pudełko");
local nazwa_jednostki=pudelko_modul["Pełna nazwa jednostki 2"](frame);
local nazwy_modul=require("Module:Nazwy");
self.nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki);
self.nazwa_ksiazki=nazwy_modul["NAZWAKSIĄŻKI"](nazwa_jednostki);
self.nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](nazwa_jednostki);
else
local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
self.nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
self.nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
self.nazwa_artykulu=tabela_listy_danych_analizy_ksiazki.nazwa_artykulu;
end;
end;
function p.TabelaListyArtykulowKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
local nazwa_przestrzeni;local nazwa_ksiazki;
if(tabela_listy_danych_analizy_ksiazki.zastepczy)then
nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_przestrzeni;
nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_ksiazki;
else
nazwa_przestrzeni=self.nazwa_przestrzeni;
nazwa_ksiazki=self.nazwa_ksiazki;
end;
local lista_artykulow_w_ksiazkach_w_danej_przestrzeni=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu[nazwa_przestrzeni];
if(not lista_artykulow_w_ksiazkach_w_danej_przestrzeni)then return nil;end;
local tab_lista_artykulow_w_ksiazce=lista_artykulow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
return tab_lista_artykulow_w_ksiazce.spis;
end;
function p.AnalizujArgumentySzablonu(self,frame)
local parametry_modul=require("Module:Parametry");
self.args=parametry_modul.PobierzArgsParametry(frame,true);
end;
function p.Args(self)
return self.args;
end;
function p.PelnaNazwaKsiazki(self,frame)
return ((self.nazwa_przestrzeni~="")and(self.nazwa_przestrzeni..":") or "")..self.nazwa_ksiazki
end;
function p.NazwaArtykuluKsiazki(self,frame)
return self.nazwa_artykulu..(self.parametry and ("?"..self.parametry) or "")..(self.naglowek and ("#"..self.naglowek) or "");
end;
function p.ObliczeniaInformacje(self,frame)
p:AnalizujArgumentySzablonu(frame);
p:ParametryPudelkaKsiazki(frame);
local tab_lista_artykulow_w_ksiazce=p:TabelaListyArtykulowKsiazki(frame);
if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.CzyTak(self.args["nagłówek"]);
local tab_artykul_bez_naglowka=(not naglowek) and {} or nil;
self.tab_artykul={};
local html_modul=require("Module:Html");
for _,tab_lista in ipairs(tab_lista_artykulow_w_ksiazce)do
if(tab_lista[2])then
for _,artykul_w_bazie in ipairs(tab_lista[2])do
local artykul=(not naglowek) and html_modul["NazwaStronyAdresu"](artykul_w_bazie[1][1] or artykul_w_bazie[1]) or (artykul_w_bazie[1][1] or artykul_w_bazie[1]);
if(naglowek or not tab_artykul_bez_naglowka[artykul])then
if(not naglowek)then
tab_artykul_bez_naglowka[artykul]=true;
end;
table.insert(self.tab_artykul, parametry_modul.TypeTable(artykul_w_bazie[1]) and {artykul,artykul_w_bazie[1][2],} or artykul);
end;
end;
end;
end;
self.len_tab_artykul=#self.tab_artykul;
return true;
end;
function p.PomiedzyArtykul(self,frame)
self.numer=tonumber(frame.args[1]) or 1;
self.reszta=math.fmod(self.numer,self.len_tab_artykul-2)+1;
return self.tab_artykul[self.reszta+1];
end;
function p.LosowyArtykul(self,frame)
self.numer=tonumber(frame.args[1]) or 1;
self.reszta=math.fmod(self.numer,self.len_tab_artykul)+1;
return self.tab_artykul[self.reszta];
end;
function p.TOCSilnik(lista_elementow_spisu_tresci, atrybuty)
if(lista_elementow_spisu_tresci==nil)then return nil;end;
local twor_listy="";
local liczba_ulozenia_w_menu_spisu_tresci=lista_elementow_spisu_tresci[1][2];
local poziom=1;
local num={};
for licznik, element_w_tablicy in ipairs(lista_elementow_spisu_tresci) do
if(licznik==1)then
num[#num+1]=1;
twor_listy=(atrybuty and '<ul '..atrybuty..'>' or '<ul>')..'<li class=\"toclevel-1 tocsection-1\">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
else
if(element_w_tablicy[2]==liczba_ulozenia_w_menu_spisu_tresci)then
num[#num]=num[#num]+1;
twor_listy=twor_listy..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
elseif(element_w_tablicy[2]>liczba_ulozenia_w_menu_spisu_tresci)then
num[#num+1]=1;
poziom=poziom+1;
twor_listy=twor_listy..'<ul><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
elseif(element_w_tablicy[2]<liczba_ulozenia_w_menu_spisu_tresci)then
local num_length=#num;
for i=num_length,num_length-liczba_ulozenia_w_menu_spisu_tresci+element_w_tablicy[2]+1,-1 do
table.remove(num);
end;
num[#num]=num[#num]+1;
local roznica_poziomow=liczba_ulozenia_w_menu_spisu_tresci-element_w_tablicy[2];
poziom=poziom-roznica_poziomow;
twor_listy=twor_listy..mw.ustring.rep('</li></ul>',roznica_poziomow)..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'
.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
end;
end;
end;
twor_listy=twor_listy..mw.ustring.rep('</li></ul>',liczba_ulozenia_w_menu_spisu_tresci or 0);
return twor_listy;
end;
function p.TOC(frame,lista_elementow_spisu_tresci,czy_nie_aktualny,rozciagnij)
local twor_listy=p.TOCSilnik(lista_elementow_spisu_tresci);
local parametry_modul=require("Module:Parametry");
local frame=frame or mw.getCurrentFrame();
local args=frame.args;
local toc_czy_tocramka=parametry_modul.CzyTak(args["toc"]);
if(not toc_czy_tocramka)then
local czy_ukryte=twor_listy;
local funkcja=args["funkcja"] or "UkrytaWikitabelowaListaMenu";
local wysokosc=parametry_modul.CzyTak(args["wysokość"]) and args["wysokość"] or "700px";
local szerokosc=parametry_modul.CzyTak(args["szerokość"])and args["szerokość"] or "100%";
local spis_tresci=parametry_modul.CzyTak(args["spis treści"])and args["spis treści"] or "Spis treści";
local spis_artykulu=parametry_modul.CzyTak(args["spis artykułu"]);
local czy_bez_arginesu_dolnego=parametry_modul.CzyTak(args["bez marginesu dolnego"]);
local czy_z_marginesami_ramki=parametry_modul.CzyTak(args["z marginesami ramki"]);
local zawartosc_z_marginesami=parametry_modul.CzyTak(args["zawartość z marginesami"]);
twor_listy='<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..' mw-overflow-x mw-overflow-y mw-not-overflow-x" style="'..(zawartosc_z_marginesami and ("padding:"..args["zawartość z marginesami"])..";" or "")..'width:'..szerokosc..';max-height:'..wysokosc..';overflow:auto;padding-right:5px;box-sizing:border-box;">'..(czy_ukryte or "<ul></ul>").."</div>";
local wikikod_menu='{{Tabela nawigacyjna|styl='..((czy_z_marginesami_ramki) and ("margin:"..args["z marginesami ramki"])..";" or "")..((czy_bez_arginesu_dolnego) and 'margin-bottom:0;' or "")..(czy_ukryte and "" or "visibility:hidden")..';font-size:14px;background-color:white;line-height:1.2em;width:'..(rozciagnij and "100%" or "auto")..';box-sizing:border-box'..(spis_artykulu and ';border:#aaa 1px solid' or '')..'|tytuł=<div style="text-align:left;font-size:14px;background-color:white;line-height:1.2em;'..(spis_artykulu and ';border-bottom:#aaa 1px solid' or '')..';white-space:nowrap;min-width:130px;">'..spis_tresci..'</div>|spis='..twor_listy..'|funkcja='..funkcja..'|klasa=spis_treści}}';
local rozwiniety_wikikod=frame:preprocess(wikikod_menu);
return rozwiniety_wikikod;
else
return (twor_listy and ('\n=Spis treści=\n<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..'" style="margin-left:10px">'..twor_listy..'</div>') or "");
end;
end;
function p.AnalizaSzablonuStronicowegoParsera(self,uzyskano_w_wyniku_parsowania_wywolanie_szablonu,kod,obiekt,nazwa_modolu,__Funkcja, __Funkcja2)
if(obiekt~="TEMPLATE")then return;end;
uzyskano_w_wyniku_parsowania_wywolanie_szablonu=mw.ustring.gsub(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,"\n+","");
local tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modolu];
--mw.logObject(tablica_obiektow_strony,nazwa_modolu);
local function GlownaFunkcja(wywolanie,oznaczenie_szablonu)
local techniczne_modul=require("Module:Techniczne");
local tabela_parametrow_szablonu=techniczne_modul["ParsujWywołanieSzablonu"](wywolanie);
if(not tabela_parametrow_szablonu)then return nil;end;
__Funkcja(tabela_parametrow_szablonu,wywolanie);
if(__Funkcja2)then
__Funkcja2(oznaczenie_szablonu,wywolanie,tabela_parametrow_szablonu,uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
end;
end;
GlownaFunkcja(uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
end;
function p.AnalizujLinkSzablonyOrazLinki(wyzyskane_wywolanie_szablonu_spis_tresci,nazwa_przestrzeni,nazwa_ksiazki,__FUNKCJA)
local pozycja_artykulu=nil;local nazwa=nil;
local pozycja_artykulu,nazwa=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)|([^%[%]{}]+)%]%]$")
if(not((pozycja_artykulu)and(nazwa)))then
pozycja_artykulu=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)%]%]$");
end;
local function Artykul(strona)
local nazwy_modul=require("Module:Nazwy");
local html_modul=require("Module:Html");
local parametry=html_modul["ParametryStronyAdresu"](strona);
local naglowek=html_modul["NagłówekStronyAdresu"](strona);
local nazwa_przestrzeni_strony=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_ksiazki_strony=nazwy_modul["NAZWAKSIĄŻKI"](strona);
local nazwa_artykulu_strony=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona);
if((nazwa_przestrzeni_strony==nazwa_przestrzeni)and(nazwa_ksiazki_strony==nazwa_ksiazki))then
return nazwa_artykulu_strony..(parametry and ("?"..parametry) or "")..(naglowek and ("#"..naglowek) or "");
else
return;
end;
end;
local id=nil;
local parametry;
local czy_pozycja_artykulu=nil;
if(not pozycja_artykulu)then
local link_szablon=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"({{[^{}]+}})");
if(link_szablon)then
local techniczne_modul=require("Module:Techniczne");
parametry=techniczne_modul["ParsujWywołanieSzablonu"](link_szablon);
local szablon=parametry[0];
if(szablon=="SpisTreści")then
pozycja_artykulu=parametry[1];
id=true;
elseif(szablon=="Sekcja referencyjna")then
local podstrona=parametry[3] or parametry["podstrona"];
local strona=parametry[1] or parametry["strona"];
if(not strona)then
local nazwy_modul=require("Module:Nazwy");
pozycja_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"]();
else
pozycja_artykulu=(((podstrona) and (podstrona~="")) and (podstrona..((not mw.ustring.match(strona,"^#")) and "/" or "")) or "")..strona;
end;
nazwa=parametry["nazwa"] or parametry[2];
else
if(szablon=="Link wewnętrzny")then
local strona=parametry["strona"];
nazwa=parametry["nazwa"];
pozycja_artykulu=Artykul(strona);
czy_pozycja_artykulu=strona;
elseif(szablon=="LinkOgólne")then
local strona=parametry[1];
nazwa=parametry[2];
local miano_przestrzeni_nazw=parametry["miano przestrzeni nazw"];
if(miano_przestrzeni_nazw)then
czy_pozycja_artykulu=((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw..":") or "")..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
else
pozycja_artykulu=Artykul(parametry[1])
czy_pozycja_artykulu=parametry[1];
end;
elseif(szablon=="LinkGłówna")then
pozycja_artykulu=Artykul(parametry[1])
czy_pozycja_artykulu=parametry[1];
nazwa=parametry[2];
elseif((szablon=="LinkWikijunior")or(szablon=="LinkWikijunior2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.Wikijunior..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((szablon=="LinkProjekt")or(szablon=="LinkProjekt2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.Wikibooks..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((szablon=="LinkUżytkownik")or(szablon=="LinkUżytkownik2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.User..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((__FUNKCJA)and(__FUNKCJA(parametry)))then
return nil,nil,false,parametry,true;
end;
end;
end;
else
local parametry_modul=require("Module:Parametry");
pozycja_artykulu=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=pozycja_artykulu,[2]="tak",});
local czy_pozycja_artykulu=mw.ustring.match(pozycja_artykulu,"^/(.-)/+$") or mw.ustring.match(pozycja_artykulu,"^/(.+)$");
if(czy_pozycja_artykulu)then
if(parametry_modul["CzyTakCiąg"](czy_pozycja_artykulu))then
pozycja_artykulu=czy_pozycja_artykulu;
else
pozycja_artykulu=nil;
end;
else
local czy_pozycja_artykulu=pozycja_artykulu;
pozycja_artykulu=Artykul(pozycja_artykulu);
if((not pozycja_artykulu)and(czy_pozycja_artykulu)and(not mw.ustring.match(czy_pozycja_artykulu,"[{}%[%]|]")))then
local kod_jezyka_koncowy="pl";
local kod_projektu_koncowy="b";
local linki_modul=require("Module:Linki");
local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=linki_modul.KodyNazwyStrony(czy_pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy,{});
return nil,{nazwa_strony_linku,nazwa,kod_jezyka_koncowy,kod_projektu_koncowy,},false,nil,false;
else
return {pozycja_artykulu,nazwa},nil,false,nil,false;
end;
end;
end;
if((not pozycja_artykulu)and(czy_pozycja_artykulu))then
local wiki_modul=require("Module:Wiki");
local kod_jezyka_koncowy,kod_projektu_koncowy=wiki_modul.KodyWiki(parametry["klucz projektu"],parametry["kod jezyka"],parametry["kod projektu"]);
local linki_modul=require("Module:Linki");
local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=linki_modul.KodyNazwyStrony(czy_pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy,{});
return nil,{nazwa_strony_linku,parametry[2],kod_jezyka_koncowy,kod_projektu_koncowy},false,nil,false;
end;
return {pozycja_artykulu,nazwa},nil,id,parametry,false;
end;
function p.NumerObiektu(frame, nazwa_obiektu)
local pf=frame:getParent();
local parametry_modul=require("Module:Parametry");
local uchwyt_obiektu=(frame.args["uchwyt"])and parametry_modul["Odstępy"](frame.args["uchwyt"]) or nil;
local nazwa_strony;
local html_modul=require("Module:Html");
local nazwy_modul=require("Module:Nazwy");
local ksiazkowe_modul=require("Module:Książkowe");
local techniczne_modul=require("Module:Techniczne");
local nazwa_przestrzeni;local nazwa_ksiazki;local nazwa_artykulu;
nazwa_artykulu=frame.args["nazwa artykułu"];
nazwa_ksiazki=frame.args["nazwa książki"];
local tabela_listy_danych_analizy_ksiazki=mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
if(not parametry_modul.CzyTak{[1]=tabela_listy_danych_analizy_ksiazki,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
local czy_aktualna_strona=nil;
if((not nazwa_artykulu)and(not nazwa_ksiazki))then
czy_aktualna_strona=1;
nazwa_strony="";
elseif((nazwa_artykulu)and(not nazwa_ksiazki))then
czy_aktualna_strona=2;
nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," ");
nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
else
nazwa_ksiazki=ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"](nazwa_ksiazki);
nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_ksiazki);
nazwa_ksiazki=ksiazkowe_modul["NazwaKsiążki"](nazwa_ksiazki);
nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," ");
nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
end;
local link = function(adres_linku,nazwa_linku,klasa,styl)
local czy_klasa=parametry_modul.CzyTak(klasa);
local czy_styl=parametry_modul.CzyTak(styl);
if(czy_klasa or czy_styl)then
spanramka=mw.html.create('span');
if(czy_klasa)then spanramka:attr("class",klasa);end;
if(czy_styl)then spanramka:attr('style',styl);end;
spanramka:wikitext(nazwa_linku);
local kod_html=spanramka:allDone();
return "[["..adres_linku.."|"..tostring(kod_html).."]]";
else
return "[["..adres_linku.."|"..nazwa_linku.."]]";
end;
end;
local wzor = function(uchwyt,numeracja,styl_main,styl_odstepu,pole_odstepu,styl_wzoru,klasa_wzoru,wzor,opis,opis2,klasa_opisu,styl_opisu,styl_opisu_2,wzor_opisu,wzor_opisu_2,styl_alternatywy_opisu,styl_alternatywy_opisu_2,pozycja_numeracji,klasa_numeracji,styl_numeracji,bez_automatu)
divramka=mw.html.create('div');
local parametry_modul=require("Module:Parametry");
local czy_pozycja_numeracji_prawa=parametry_modul.CzyTak(pozycja_numeracji);
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',"wzór_"..uchwyt);
else
if(numeracja)then
divramka:attr('id',"wzór_"..numeracja);
else
divramka:attr('id',"wzór_"..uchwyt);
end;
end;
end;
if(parametry_modul.CzyTak(styl_main))then
divramka:attr('style',styl_main);
end;
local uchwyt_fun=function()
if(parametry_modul.CzyTak(uchwyt))then
local divuchwytramka=mw.html.create('div');
divuchwytramka:attr('class',klasa_numeracji);
divuchwytramka:attr('style',styl_numeracji);
if(parametry_modul.CzyTak(bez_automatu))then
divuchwytramka:wikitext('(',uchwyt..")");
else
if(numeracja)then
divuchwytramka:wikitext('('..numeracja..")");
else
divuchwytramka:wikitext("(Niedopasowany uchwyt: "..uchwyt..")");
end;
end;
divramka:node(divuchwytramka);
end;
end;
local pole_odstepu_fun=function()
divramka:addClass("wzory");
local divramka2=mw.html.create('div');
divramka2:attr('style',styl_odstepu);
divramka2:wikitext(pole_odstepu);
divramka:node(divramka2);
end;
local opis_fun=function(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu)
if(parametry_modul.CzyTak(opis))then
local divramka5=mw.html.create('div')
divramka5:attr('class',klasa_opisu)
divramka5:attr('style',styl_opisu)
divramka5:wikitext(wzor_opisu)
divramka:node(divramka5)
else
local divramka5=mw.html.create('div');
divramka5:attr('style',styl_alternatywy_opisu);
divramka:node(divramka5)
end;
end;
if(not czy_pozycja_numeracji_prawa)then
uchwyt_fun();
else
pole_odstepu_fun();
end;
opis_fun(opis2,styl_opisu_2,wzor_opisu_2,styl_alternatywy_opisu_2);
local divramka4=mw.html.create('div');
divramka4:attr('class',klasa_wzoru);
divramka4:attr('style',styl_wzoru);
divramka4:wikitext(wzor);
divramka:node(divramka4);
opis_fun(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu);
if(czy_pozycja_numeracji_prawa)then
uchwyt_fun();
else
pole_odstepu_fun();
end;
return tostring(divramka:allDone());
end;
local rysunek=function(uchwyt,numeracja,opis, rysunek, pozycja,rozmiar,klasa,styl,bez_automatu)
local divramka=mw.html.create('div');
divramka:attr('class',klasa);
divramka:attr('style',styl);
local czy_uchwyt=parametry_modul.CzyTak(uchwyt);
if(czy_uchwyt)then
if(numeracja)then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',"rysunek_"..uchwyt);
else
divramka:attr('id',"rysunek_"..numeracja);
end;
else
divramka:attr('id',"rysunek_"..uchwyt);
end;
end;
local czy_opis=parametry_modul.CzyTak(opis);
local wywolanie_rysunku="[[File:"..((rysunek)and rysunek or "Przykładowy rysunek.svg").."|thumb|"..(pozycja or "right").."|"..(rozmiar or "200px")..((czy_uchwyt or czy_opis)and ("|"..((parametry_modul.CzyTak(uchwyt))and "(Rys. "..((numeracja)and (parametry_modul.CzyTak(bez_automatu) and uchwyt or numeracja) or "Niedopasowany uchwyt: "..uchwyt)..")" or "").." "..opis) or "").."]]";
divramka:wikitext(wywolanie_rysunku);
return tostring(divramka:allDone());
end;
local wypowiedzenie = function(uchwyt,przedrostek,numeracja,klasa,styl,przedrostek2,rodzaj,kogo,czego,jakie,styl_naglowka,styl_tekstu,tekst,bez_automatu)
local divramka=mw.html.create('div');
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',przedrostek.."_"..uchwyt);
else
divramka:attr('id',przedrostek.."_"..(numeracja or uchwyt));
end;
end;
divramka:attr('class',klasa);
divramka:attr('style',styl);
local wikitext="";
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
wikitext="("..przedrostek2.." "..uchwyt..")";
else
if(numeracja)then
wikitext="("..przedrostek2.." "..numeracja..")";
else
wikitext="("..przedrostek2.." Niedopawany uchwyt: "..uchwyt..")";
end;
end;
end;
if(parametry_modul.CzyTak(styl_naglowka))then
local spanramka=mw.html.create('span');
spanramka:attr('style',styl_naglowka);
spanramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
divramka:node(spanramka);
else
divramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
end;
divramka:wikitext('<BR>');
if(parametry_modul.CzyTak(styl_tekstu))then
local spanramka=mw.html.create('span');
spanramka:attr('style',styl_tekstu);
spanramka:wikitext(tekst);
divramka:node(spanramka);
else
divramka:wikitext(tekst);
end;
return tostring(divramka:allDone());
end;
local punkty = function(uchwyt,numeracja,przedrostek_id,klasa,styl,prefiks,bez_automatu)
local spanramka=mw.html.create('sup');
spanramka:attr('style',klasa);
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
spanramka:attr('id',przedrostek_id.."_"..uchwyt);
else
if(parametry_modul.CzyTak(numeracja))then
spanramka:attr('id',przedrostek_id.."_"..numeracja);
else
spanramka:attr('id',przedrostek_id.."_"..uchwyt);
end;
end;
end;
spanramka:attr('style',styl);
local smallramka=mw.html.create('small');
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
smallramka:wikitext(prefiks..": "..uchwyt);
else
if(parametry_modul.CzyTak(numeracja))then
smallramka:wikitext('['..prefiks..": "..numeracja..']');
else
smallramka:wikitext('['..prefiks..": Niedopsowany uchwyt: "..uchwyt..']');
end;
end;
else
smallramka:wikitext('['..prefiks..": Niedopasowany uchwyt: brak uchwytu]");
end;
spanramka:node(smallramka);
return tostring(spanramka:allDone());
end;
local nazwa_strony_fun=function(nazwa_strony)
if((tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni)
and(tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki==nazwa_ksiazki)
and (tabela_listy_danych_analizy_ksiazki.nazwa_artykulu==nazwa_artykulu))then
return "";
end;
return nazwa_strony;
end;
if(parametry_modul.CzyTak(frame.args["bez automatu"]))then
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
if(uchwyt_obiektu)then
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"]..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
else
return "("..link(nazwa_strony.."#"..frame.args["id"].."_".."Nieznany uchwyt",frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
end;
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,uchwyt_obiektu,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,uchwyt_obiektu,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],uchwyt_obiektu,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,uchwyt_obiektu,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return uchwyt_obiektu;
end;
else
return uchwyt_obiektu;
end;
end;
local tabela_listy_uchwytow_i_numeracji_na_stronie;
if(czy_aktualna_strona==nil)then
local dane_analizy_artykulu=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu;
if(dane_analizy_artykulu)then
local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni=dane_analizy_artykulu[nazwa_przestrzeni];
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni)then
local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
if(lista_artykolow)then
local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
if(tabela_listy_analizy_na_stronie)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
end;
end;
end;
end;
end;
elseif(czy_aktualna_strona==1)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_danych_analizy_ksiazki.tablica_aktualnego_artykolu;
if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_na_stronie,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
elseif(czy_aktualna_strona==2)then
tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_ksiazki;
if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
if(lista_artykolow)then
local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
if(tabela_listy_analizy_na_stronie)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
end;
end;
end;
end;
if(tabela_listy_uchwytow_i_numeracji_na_stronie)then
local spis_uchwytow=tabela_listy_uchwytow_i_numeracji_na_stronie[nazwa_obiektu];
if(spis_uchwytow)then
if((uchwyt_obiektu)and(uchwyt_obiektu~=""))then
for _, dany_artykul in ipairs(spis_uchwytow)do
if(dany_artykul[1]==uchwyt_obiektu)then
if(nazwa_obiektu~="Śródtytuł")then
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
if(not dany_artykul[2])then
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
end;
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..dany_artykul[2],frame.args["przedrostek"]..dany_artykul[2],frame.args["klasa"],frame.args["styl"])..")";
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,dany_artykul[2],frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,dany_artykul[2],frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],dany_artykul[2],frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,dany_artykul[2],frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
end;
else
return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
end;
else
if(dany_artykul[2])then
local tytul_szablonu=frame.args["nazwa szablonu"] or techniczne_modul.NazwaSzablonu(frame:getParent():getTitle());
if(tytul_szablonu=="LinkŚródtytuł")then
return link(dany_artykul[2][1],dany_artykul[2][2],frame.args["klasa"],frame.args["styl"])
elseif(tytul_szablonu=="LinkŚródtytułTutaj")then
return link(dany_artykul[2][1],"tutaj",frame.args["klasa"],frame.args["styl"])
end;
end;
end;
end;
end;
end;
end;
end;
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,nil,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,nil,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],nil,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,nil,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
else
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
end;
return p;
f34ex1m3xwj6qxq3mjf19m6mbllz0rx
438987
438986
2022-08-28T18:18:11Z
Persino
2851
Scribunto
text/plain
local p={};
--zamykanie
local znak_127=mw.ustring.char(127);
function p.OgolnyWzor(numer_szablonu,co)
if(not numer_szablonu)then
local wzor=znak_127.."'\"`UNIQ%-%-"..(co or "TEMPLATE").."%-(%d+)%-QINU`\"'"..znak_127;
return wzor;
end;
local wzor=znak_127.."'\"`UNIQ%-%-"..(co or "TEMPLATE").."%-"..numer_szablonu.."%-QINU`\"'"..znak_127;
return wzor;
end;
function p.KodujStroneObiektowa(self,tekst_artykulu,nazwa_modolu,tablica_obiektow_strony_dany_modol)
local czy_wlasne;
local function ZamieniajSzablonyStart(self,tablica_obiektow_strony_dany_modol)
local tab_self;
if(not tablica_obiektow_strony_dany_modol)then tab_self=self;else tab_self=tablica_obiektow_strony_dany_modol;end;
tab_self.numer_szablonu={};
tab_self.numer_szablonu["TEMPLATE"]=1;
tab_self.numer_szablonu["LINKW"]=1;
tab_self.numer_szablonu["LINKZ"]=1;
tab_self.numer_szablonu["VAR"]=1;
tab_self.numer_szablonu["NOWIKI"]=1;
tab_self.numer_szablonu["MATH"]=1;
tab_self.numer_szablonu["PRE"]=1;
end;
local function ZamieniajSzablony(self,szablon,tablica_obiektow_strony,co,czy_nie_self)
local kod=znak_127.."'\"`UNIQ--"..(co or "TEMPLATE").."-"..self.numer_szablonu[co or "TEMPLATE"].."-QINU`\"'"..znak_127;
local tab_self;
if(not czy_nie_self)then tab_self=self;else tab_self=tablica_obiektow_strony;end;
tablica_obiektow_strony[co or "TEMPLATE"][tab_self.numer_szablonu[co or "TEMPLATE"]]=szablon;
tab_self.numer_szablonu[co or "TEMPLATE"]=tab_self.numer_szablonu[co or "TEMPLATE"]+1;
return kod;
end;
if(not tablica_obiektow_strony_dany_modol)then
if(not self.tablica_obiektow_strony)then self.tablica_obiektow_strony={};end;
if(not self.tablica_obiektow_strony[nazwa_modolu])then self.tablica_obiektow_strony[nazwa_modolu]={};end;
---
tablica_obiektow_strony_dany_modol=self.tablica_obiektow_strony[nazwa_modolu];
ZamieniajSzablonyStart(self,nil);
czy_wlasne=false;
else
ZamieniajSzablonyStart(self,tablica_obiektow_strony_dany_modol);
czy_wlasne=true;
end;
tablica_obiektow_strony_dany_modol["TEMPLATE"]={};
tablica_obiektow_strony_dany_modol["LINKW"]={};
tablica_obiektow_strony_dany_modol["LINKZ"]={};
tablica_obiektow_strony_dany_modol["VAR"]={};
tablica_obiektow_strony_dany_modol["NOWIKI"]={};
tablica_obiektow_strony_dany_modol["MATH"]={};
tablica_obiektow_strony_dany_modol["PRE"]={};
---
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Pp][Rr][Ee]%s*>(.-)</%s*[Pp][Rr][Ee]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"PRE",czy_wlasne);end);
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Nn][Oo][Ww][Ii][Kk][Ii]%s*>(.-)</%s*[Nn][Oo][Ww][Ii][Kk][Ii]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"NOWIKI",czy_wlasne);end);
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Mm][Aa][Tt][Hh]%s*>(.-)</%s*[Mm][Aa][Tt][Hh]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"MATH",czy_wlasne);end);
local ile_var=0;local ile_linkw=0;local ile_linkz=0;local ile_template=0;
repeat
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"(%[%[[^%[%]]+%]%])",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"LINKW",czy_wlasne);end);
tekst_artykulu,ile_linkz=mw.ustring.gsub(tekst_artykulu,"(%[[^%[%]]+%])",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"LINKZ",czy_wlasne);end);
tekst_artykulu,ile_var=mw.ustring.gsub(tekst_artykulu,"({{{[^{}]-}}})",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"VAR",czy_wlasne);end);
tekst_artykulu,ile_template=mw.ustring.gsub(tekst_artykulu,"({{[^{}]-}})",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"TEMPLATE",czy_wlasne);end);
until ((ile_var==0)and(ile_linkw==0)and(ile_linkz==0)and(ile_template==0));
return tekst_artykulu;
end;
function p.IteratorSzablonu(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony)
if(not tablica_obiektow_strony)then tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modolu];end;
local iter=mw.ustring.gmatch(tekst_rozwiniety_calego_artykulu,p.OgolnyWzor(nil,"(%a+)"));
local tak=nil;
local szablon=nil;
local iter2=nil;
local function Iterator()
local function IterMain()
local obiekt,kod=iter();
if((not obiekt)or(not kod))then return nil;end;
kod=tonumber(kod);
szablon=tablica_obiektow_strony[obiekt][kod];
tak=true;
iter2=p.IteratorSzablonu(self,szablon,nil,tablica_obiektow_strony);
return szablon,kod,obiekt;
end;
if(not tak)then
local szablon,kod,obiekt=IterMain();
return szablon,kod,obiekt;
else
local szablon,kod,obiekt=iter2();
if((not szablon)or(not kod)or(not obiekt))then
tak=nil;
local szablon,kod,obiekt=IterMain();
return szablon,kod,obiekt;
else
return szablon,kod,obiekt;
end;
end;
end;
return Iterator;
end;
function p.SkladajSzablonoweWywolanie(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony,__funkcja)
local techniczne_modul=require("Module:Techniczne");
local iterator=p.IteratorSzablonu(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony);
for szablon,kod,obiekt in iterator do
szablon=((__funkcja)and __funkcja(szablon,kod,obiekt) or szablon);
szablon=techniczne_modul["TekstBezOdwołańDoParametrówWeWzorze"](szablon);
tekst_rozwiniety_calego_artykulu=mw.ustring.gsub(tekst_rozwiniety_calego_artykulu,p.OgolnyWzor(kod,obiekt),szablon);
end;
return tekst_rozwiniety_calego_artykulu;
end;
--koniec zamykanie
function p.LiczonyHNumer()
local ulozenie=nil;
local ostatnie=0;
local h_numer_zapamietane=nil;
return function(h_numer,h_numer_nowe,jakie)
if(not h_numer_nowe)then
if(not jakie)then
if(h_numer==0)then
return h_numer_zapamietane;
elseif(h_numer<0)then
h_numer=math.abs(h_numer);
end;
else
if(h_numer==0)then
h_numer_zapamietane=0;
return 0;
end;
end;
if((ulozenie==nil)or(ulozenie>=h_numer))then
ulozenie=h_numer-1;
elseif(ostatnie+1<h_numer-ulozenie)then
ulozenie=h_numer-ostatnie-1;
end;
ostatnie=h_numer-ulozenie;
h_numer=h_numer-ulozenie;
h_numer_zapamietane=h_numer;
return h_numer;
else
ulozenie=h_numer-h_numer_nowe;
ostatnie=h_numer-ulozenie;
return h_numer_nowe;
end;
end;
end;
function p.PoziomAdresu(adres)
local lens=#adres;
local i=1;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
end;
end;
return i;
end;
function p.NazwaNadStrony(adres,numer)
if((numer)and(numer==1))then return nil;end;
if((not numer)and(numer<1)or(numer~=math.floor(numer)))then return adres;end;
local lens=#adres;
local i=1;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
end;
if(i==numer)then
return mw.ustring.sub(adres,1,p-1);
end;
end;
return adres;
end;
function p.SubNazwaNadStrony(adres,numer,krok)
if((not numer)or(numer<1)or(numer~=math.floor(numer)))then return adres;end;
krok=krok or 1;
if((krok<1)or(krok~=math.floor(krok)))then return adres;end;
local lens=#adres;
local i=1;
local a=nil;local b=nil;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
if(i==numer)then
if(not a)then a=p+1;end;
end;
if(i==numer+krok)then
if(not b)then b=p-1;break;end;
end;
end;
end;
if(not a)then a=1;end;
if(not b)then b=lens;end;
return mw.ustring.sub(adres,a,b);
end;
function p.ParametryPudelkaKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
local nazwa_przestrzeni=self.args["nazwa przestrzeni nazw"];
local nazwa_jednostki=self.args["nazwa jednostki"];
if(((nazwa_przestrzeni)and(nazwa_jednostki))or((nazwa_przestrzeni)and(not nazwa_jednostki))or((not nazwa_przestrzeni)and(nazwa_jednostki)))then
if(nazwa_jednostki)then
local html_modul=require("Module:Html");
self.naglowek=html_modul["NagłówekStronyAdresu"](nazwa_jednostki,true);
self.parametry=html_modul["ParametryStronyAdresu"](nazwa_jednostki);
end;
local pudelko_modul=require("Module:Pudełko");
local nazwa_jednostki=pudelko_modul["Pełna nazwa jednostki 2"](frame);
local nazwy_modul=require("Module:Nazwy");
self.nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki);
self.nazwa_ksiazki=nazwy_modul["NAZWAKSIĄŻKI"](nazwa_jednostki);
self.nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](nazwa_jednostki);
else
local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
self.nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
self.nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
self.nazwa_artykulu=tabela_listy_danych_analizy_ksiazki.nazwa_artykulu;
end;
end;
function p.TabelaListyArtykulowKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
local nazwa_przestrzeni;local nazwa_ksiazki;
if(tabela_listy_danych_analizy_ksiazki.zastepczy)then
nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_przestrzeni;
nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_ksiazki;
else
nazwa_przestrzeni=self.nazwa_przestrzeni;
nazwa_ksiazki=self.nazwa_ksiazki;
end;
local lista_artykulow_w_ksiazkach_w_danej_przestrzeni=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu[nazwa_przestrzeni];
if(not lista_artykulow_w_ksiazkach_w_danej_przestrzeni)then return nil;end;
local tab_lista_artykulow_w_ksiazce=lista_artykulow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
return tab_lista_artykulow_w_ksiazce.spis;
end;
function p.AnalizujArgumentySzablonu(self,frame)
local parametry_modul=require("Module:Parametry");
self.args=parametry_modul.PobierzArgsParametry(frame,true);
end;
function p.Args(self)
return self.args;
end;
function p.PelnaNazwaKsiazki(self,frame)
return ((self.nazwa_przestrzeni~="")and(self.nazwa_przestrzeni..":") or "")..self.nazwa_ksiazki
end;
function p.NazwaArtykuluKsiazki(self,frame)
return self.nazwa_artykulu..(self.parametry and ("?"..self.parametry) or "")..(self.naglowek and ("#"..self.naglowek) or "");
end;
function p.ObliczeniaInformacje(self,frame)
p:AnalizujArgumentySzablonu(frame);
p:ParametryPudelkaKsiazki(frame);
local tab_lista_artykulow_w_ksiazce=p:TabelaListyArtykulowKsiazki(frame);
if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.CzyTak(self.args["nagłówek"]);
local tab_artykul_bez_naglowka=(not naglowek) and {} or nil;
self.tab_artykul={};
local html_modul=require("Module:Html");
for _,tab_lista in ipairs(tab_lista_artykulow_w_ksiazce)do
if(tab_lista[2])then
for _,artykul_w_bazie in ipairs(tab_lista[2])do
local artykul=(not naglowek) and html_modul["NazwaStronyAdresu"](artykul_w_bazie[1][1] or artykul_w_bazie[1]) or (artykul_w_bazie[1][1] or artykul_w_bazie[1]);
if(naglowek or not tab_artykul_bez_naglowka[artykul])then
if(not naglowek)then
tab_artykul_bez_naglowka[artykul]=true;
end;
table.insert(self.tab_artykul, parametry_modul.TypeTable(artykul_w_bazie[1]) and {artykul,artykul_w_bazie[1][2],} or artykul);
end;
end;
end;
end;
self.len_tab_artykul=#self.tab_artykul;
return true;
end;
function p.PomiedzyArtykul(self,frame)
self.numer=tonumber(frame.args[1]) or 1;
self.reszta=math.fmod(self.numer,self.len_tab_artykul-2)+1;
return self.tab_artykul[self.reszta+1];
end;
function p.LosowyArtykul(self,frame)
self.numer=tonumber(frame.args[1]) or 1;
self.reszta=math.fmod(self.numer,self.len_tab_artykul)+1;
return self.tab_artykul[self.reszta];
end;
function p.TOCSilnik(lista_elementow_spisu_tresci, atrybuty)
if(lista_elementow_spisu_tresci==nil)then return nil;end;
local twor_listy="";
local liczba_ulozenia_w_menu_spisu_tresci=lista_elementow_spisu_tresci[1][2];
local poziom=1;
local num={};
for licznik, element_w_tablicy in ipairs(lista_elementow_spisu_tresci) do
if(licznik==1)then
num[#num+1]=1;
twor_listy=(atrybuty and '<ul '..atrybuty..'>' or '<ul>')..'<li class=\"toclevel-1 tocsection-1\">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
else
if(element_w_tablicy[2]==liczba_ulozenia_w_menu_spisu_tresci)then
num[#num]=num[#num]+1;
twor_listy=twor_listy..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
elseif(element_w_tablicy[2]>liczba_ulozenia_w_menu_spisu_tresci)then
num[#num+1]=1;
poziom=poziom+1;
twor_listy=twor_listy..'<ul><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
elseif(element_w_tablicy[2]<liczba_ulozenia_w_menu_spisu_tresci)then
local num_length=#num;
for i=num_length,num_length-liczba_ulozenia_w_menu_spisu_tresci+element_w_tablicy[2]+1,-1 do
table.remove(num);
end;
num[#num]=num[#num]+1;
local roznica_poziomow=liczba_ulozenia_w_menu_spisu_tresci-element_w_tablicy[2];
poziom=poziom-roznica_poziomow;
twor_listy=twor_listy..mw.ustring.rep('</li></ul>',roznica_poziomow)..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'
.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
end;
end;
end;
twor_listy=twor_listy..mw.ustring.rep('</li></ul>',liczba_ulozenia_w_menu_spisu_tresci or 0);
return twor_listy;
end;
function p.TOC(frame,lista_elementow_spisu_tresci,czy_nie_aktualny,rozciagnij)
local twor_listy=p.TOCSilnik(lista_elementow_spisu_tresci);
local parametry_modul=require("Module:Parametry");
local frame=frame or mw.getCurrentFrame();
local args=frame.args;
local toc_czy_tocramka=parametry_modul.CzyTak(args["toc"]);
if(not toc_czy_tocramka)then
local czy_ukryte=twor_listy;
local funkcja=args["funkcja"] or "UkrytaWikitabelowaListaMenu";
local wysokosc=parametry_modul.CzyTak(args["wysokość"]) and args["wysokość"] or "700px";
local szerokosc=parametry_modul.CzyTak(args["szerokość"])and args["szerokość"] or "100%";
local spis_tresci=parametry_modul.CzyTak(args["spis treści"])and args["spis treści"] or "Spis treści";
local spis_artykulu=parametry_modul.CzyTak(args["spis artykułu"]);
local czy_bez_arginesu_dolnego=parametry_modul.CzyTak(args["bez marginesu dolnego"]);
local czy_z_marginesami_ramki=parametry_modul.CzyTak(args["z marginesami ramki"]);
local zawartosc_z_marginesami=parametry_modul.CzyTak(args["zawartość z marginesami"]);
twor_listy='<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..' mw-overflow-x mw-overflow-y mw-not-overflow-x" style="'..(zawartosc_z_marginesami and ("padding:"..args["zawartość z marginesami"])..";" or "")..'width:'..szerokosc..';max-height:'..wysokosc..';overflow:auto;padding-right:5px;box-sizing:border-box;">'..(czy_ukryte or "<ul></ul>").."</div>";
local wikikod_menu='{{Tabela nawigacyjna|styl='..((czy_z_marginesami_ramki) and ("margin:"..args["z marginesami ramki"])..";" or "")..((czy_bez_arginesu_dolnego) and 'margin-bottom:0;' or "")..(czy_ukryte and "" or "visibility:hidden")..';font-size:14px;background-color:white;line-height:1.2em;width:'..(rozciagnij and "100%" or "auto")..';box-sizing:border-box'..(spis_artykulu and ';border:#aaa 1px solid' or '')..'|tytuł=<div style="text-align:left;font-size:14px;background-color:white;line-height:1.2em;'..(spis_artykulu and ';border-bottom:#aaa 1px solid' or '')..';white-space:nowrap;min-width:130px;">'..spis_tresci..'</div>|spis='..twor_listy..'|funkcja='..funkcja..'|klasa=spis_treści}}';
local rozwiniety_wikikod=frame:preprocess(wikikod_menu);
return rozwiniety_wikikod;
else
return (twor_listy and ('\n=Spis treści=\n<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..'" style="margin-left:10px">'..twor_listy..'</div>') or "");
end;
end;
function p.AnalizaSzablonuStronicowegoParsera(self,uzyskano_w_wyniku_parsowania_wywolanie_szablonu,kod,obiekt,nazwa_modolu,__Funkcja, __Funkcja2)
if(obiekt~="TEMPLATE")then return;end;
uzyskano_w_wyniku_parsowania_wywolanie_szablonu=mw.ustring.gsub(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,"\n+","");
local tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modolu];
--mw.logObject(tablica_obiektow_strony,nazwa_modolu);
local function GlownaFunkcja(wywolanie,oznaczenie_szablonu)
local techniczne_modul=require("Module:Techniczne");
local tabela_parametrow_szablonu=techniczne_modul["ParsujWywołanieSzablonu"](wywolanie);
if(not tabela_parametrow_szablonu)then return nil;end;
__Funkcja(tabela_parametrow_szablonu,wywolanie);
if(__Funkcja2)then
__Funkcja2(oznaczenie_szablonu,wywolanie,tabela_parametrow_szablonu,uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
end;
end;
GlownaFunkcja(uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
end;
function p.AnalizujLinkSzablonyOrazLinki(wyzyskane_wywolanie_szablonu_spis_tresci,nazwa_przestrzeni,nazwa_ksiazki,__FUNKCJA)
local pozycja_artykulu=nil;local nazwa=nil;
local pozycja_artykulu,nazwa=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)|([^%[%]{}]+)%]%]$")
if(not((pozycja_artykulu)and(nazwa)))then
pozycja_artykulu=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)%]%]$");
end;
local function Artykul(strona)
local nazwy_modul=require("Module:Nazwy");
local html_modul=require("Module:Html");
local parametry=html_modul["ParametryStronyAdresu"](strona);
local naglowek=html_modul["NagłówekStronyAdresu"](strona);
local nazwa_przestrzeni_strony=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_ksiazki_strony=nazwy_modul["NAZWAKSIĄŻKI"](strona);
local nazwa_artykulu_strony=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona);
if((nazwa_przestrzeni_strony==nazwa_przestrzeni)and(nazwa_ksiazki_strony==nazwa_ksiazki))then
return nazwa_artykulu_strony..(parametry and ("?"..parametry) or "")..(naglowek and ("#"..naglowek) or "");
else
return;
end;
end;
local id=nil;
local parametry;
local czy_pozycja_artykulu=nil;
if(not pozycja_artykulu)then
local link_szablon=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"({{[^{}]+}})");
if(link_szablon)then
local techniczne_modul=require("Module:Techniczne");
parametry=techniczne_modul["ParsujWywołanieSzablonu"](link_szablon);
local szablon=parametry[0];
if(szablon=="SpisTreści")then
pozycja_artykulu=parametry[1];
id=true;
elseif(szablon=="Sekcja referencyjna")then
local podstrona=parametry[3] or parametry["podstrona"];
local strona=parametry[1] or parametry["strona"];
if(not strona)then
local nazwy_modul=require("Module:Nazwy");
pozycja_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"]();
else
pozycja_artykulu=(((podstrona) and (podstrona~="")) and (podstrona..((not mw.ustring.match(strona,"^#")) and "/" or "")) or "")..strona;
end;
nazwa=parametry["nazwa"] or parametry[2];
else
if(szablon=="Link wewnętrzny")then
local strona=parametry["strona"];
nazwa=parametry["nazwa"];
pozycja_artykulu=Artykul(strona);
czy_pozycja_artykulu=strona;
elseif(szablon=="LinkOgólne")then
local strona=parametry[1];
nazwa=parametry[2];
local miano_przestrzeni_nazw=parametry["miano przestrzeni nazw"];
if(miano_przestrzeni_nazw)then
czy_pozycja_artykulu=((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw..":") or "")..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
else
pozycja_artykulu=Artykul(parametry[1])
czy_pozycja_artykulu=parametry[1];
end;
elseif(szablon=="LinkGłówna")then
pozycja_artykulu=Artykul(parametry[1])
czy_pozycja_artykulu=parametry[1];
nazwa=parametry[2];
elseif((szablon=="LinkWikijunior")or(szablon=="LinkWikijunior2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.Wikijunior..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((szablon=="LinkProjekt")or(szablon=="LinkProjekt2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.Wikibooks..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((szablon=="LinkUżytkownik")or(szablon=="LinkUżytkownik2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.User..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((__FUNKCJA)and(__FUNKCJA(parametry)))then
return nil,nil,false,parametry,true;
end;
end;
end;
else
local parametry_modul=require("Module:Parametry");
pozycja_artykulu=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=pozycja_artykulu,[2]="tak",});
local czy_pozycja_artykulu=mw.ustring.match(pozycja_artykulu,"^/(.-)/+$") or mw.ustring.match(pozycja_artykulu,"^/(.+)$");
if(czy_pozycja_artykulu)then
if(parametry_modul["CzyTakCiąg"](czy_pozycja_artykulu))then
pozycja_artykulu=czy_pozycja_artykulu;
else
pozycja_artykulu=nil;
end;
else
local czy_pozycja_artykulu=pozycja_artykulu;
pozycja_artykulu=Artykul(pozycja_artykulu);
if((not pozycja_artykulu)and(czy_pozycja_artykulu)and(not mw.ustring.match(czy_pozycja_artykulu,"[{}%[%]|]")))then
local kod_jezyka_koncowy="pl";
local kod_projektu_koncowy="b";
local linki_modul=require("Module:Linki");
local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=linki_modul.KodyNazwyStrony(czy_pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy,{});
return nil,{nazwa_strony_linku,nazwa,kod_jezyka_koncowy,kod_projektu_koncowy,},false,nil,false;
else
return {pozycja_artykulu,nazwa},nil,false,nil,false;
end;
end;
end;
if((not pozycja_artykulu)and(czy_pozycja_artykulu))then
local wiki_modul=require("Module:Wiki");
local kod_jezyka_koncowy,kod_projektu_koncowy=wiki_modul.KodyWiki(parametry["klucz projektu"],parametry["kod jezyka"],parametry["kod projektu"]);
local linki_modul=require("Module:Linki");
local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=linki_modul.KodyNazwyStrony(czy_pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy,{});
return nil,{nazwa_strony_linku,parametry[2],kod_jezyka_koncowy,kod_projektu_koncowy},false,nil,false;
end;
return {pozycja_artykulu,nazwa},nil,id,parametry,false;
end;
function p.NumerObiektu(frame, nazwa_obiektu)
local pf=frame:getParent();
local parametry_modul=require("Module:Parametry");
local uchwyt_obiektu=(frame.args["uchwyt"])and parametry_modul["Odstępy"](frame.args["uchwyt"]) or nil;
local nazwa_strony;
local html_modul=require("Module:Html");
local nazwy_modul=require("Module:Nazwy");
local ksiazkowe_modul=require("Module:Książkowe");
local techniczne_modul=require("Module:Techniczne");
local nazwa_przestrzeni;local nazwa_ksiazki;local nazwa_artykulu;
nazwa_artykulu=frame.args["nazwa artykułu"];
nazwa_ksiazki=frame.args["nazwa książki"];
local tabela_listy_danych_analizy_ksiazki=mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
if(not parametry_modul.CzyTak{[1]=tabela_listy_danych_analizy_ksiazki,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
local czy_aktualna_strona=nil;
if((not nazwa_artykulu)and(not nazwa_ksiazki))then
czy_aktualna_strona=1;
nazwa_strony="";
elseif((nazwa_artykulu)and(not nazwa_ksiazki))then
czy_aktualna_strona=2;
nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," ");
nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
else
nazwa_ksiazki=ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"](nazwa_ksiazki);
nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_ksiazki);
nazwa_ksiazki=ksiazkowe_modul["NazwaKsiążki"](nazwa_ksiazki);
nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," ");
nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
end;
local link = function(adres_linku,nazwa_linku,klasa,styl)
local czy_klasa=parametry_modul.CzyTak(klasa);
local czy_styl=parametry_modul.CzyTak(styl);
if(czy_klasa or czy_styl)then
spanramka=mw.html.create('span');
if(czy_klasa)then spanramka:attr("class",klasa);end;
if(czy_styl)then spanramka:attr('style',styl);end;
spanramka:wikitext(nazwa_linku);
local kod_html=spanramka:allDone();
return "[["..adres_linku.."|"..tostring(kod_html).."]]";
else
return "[["..adres_linku.."|"..nazwa_linku.."]]";
end;
end;
local wzor = function(uchwyt,numeracja,styl_main,styl_odstepu,pole_odstepu,styl_wzoru,klasa_wzoru,wzor,opis,opis2,klasa_opisu,styl_opisu,styl_opisu_2,wzor_opisu,wzor_opisu_2,styl_alternatywy_opisu,styl_alternatywy_opisu_2,pozycja_numeracji,klasa_numeracji,styl_numeracji,bez_automatu)
divramka=mw.html.create('div');
local parametry_modul=require("Module:Parametry");
local czy_pozycja_numeracji_prawa=parametry_modul.CzyTak(pozycja_numeracji);
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',"wzór_"..uchwyt);
else
if(numeracja)then
divramka:attr('id',"wzór_"..numeracja);
else
divramka:attr('id',"wzór_"..uchwyt);
end;
end;
end;
if(parametry_modul.CzyTak(styl_main))then
divramka:attr('style',styl_main);
end;
local uchwyt_fun=function()
if(parametry_modul.CzyTak(uchwyt))then
local divuchwytramka=mw.html.create('div');
divuchwytramka:attr('class',klasa_numeracji);
divuchwytramka:attr('style',styl_numeracji);
if(parametry_modul.CzyTak(bez_automatu))then
divuchwytramka:wikitext('(',uchwyt..")");
else
if(numeracja)then
divuchwytramka:wikitext('('..numeracja..")");
else
divuchwytramka:wikitext("(Niedopasowany uchwyt: "..uchwyt..")");
end;
end;
divramka:node(divuchwytramka);
end;
end;
local pole_odstepu_fun=function()
divramka:addClass("wzory");
local divramka2=mw.html.create('div');
divramka2:attr('style',styl_odstepu);
divramka2:wikitext(pole_odstepu);
divramka:node(divramka2);
end;
local opis_fun=function(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu)
if(parametry_modul.CzyTak(opis))then
local divramka5=mw.html.create('div')
divramka5:attr('class',klasa_opisu)
divramka5:attr('style',styl_opisu)
divramka5:wikitext(wzor_opisu)
divramka:node(divramka5)
else
local divramka5=mw.html.create('div');
divramka5:attr('style',styl_alternatywy_opisu);
divramka:node(divramka5)
end;
end;
if(not czy_pozycja_numeracji_prawa)then
uchwyt_fun();
else
pole_odstepu_fun();
end;
opis_fun(opis2,styl_opisu_2,wzor_opisu_2,styl_alternatywy_opisu_2);
local divramka4=mw.html.create('div');
divramka4:attr('class',klasa_wzoru);
divramka4:attr('style',styl_wzoru);
divramka4:wikitext(wzor);
divramka:node(divramka4);
opis_fun(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu);
if(czy_pozycja_numeracji_prawa)then
uchwyt_fun();
else
pole_odstepu_fun();
end;
return tostring(divramka:allDone());
end;
local rysunek=function(uchwyt,numeracja,opis, rysunek, pozycja,rozmiar,klasa,styl,bez_automatu)
local divramka=mw.html.create('div');
divramka:attr('class',klasa);
divramka:attr('style',styl);
local czy_uchwyt=parametry_modul.CzyTak(uchwyt);
if(czy_uchwyt)then
if(numeracja)then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',"rysunek_"..uchwyt);
else
divramka:attr('id',"rysunek_"..numeracja);
end;
else
divramka:attr('id',"rysunek_"..uchwyt);
end;
end;
local czy_opis=parametry_modul.CzyTak(opis);
local wywolanie_rysunku="[[File:"..((rysunek)and rysunek or "Przykładowy rysunek.svg").."|thumb|"..(pozycja or "right").."|"..(rozmiar or "200px")..((czy_uchwyt or czy_opis)and ("|"..((parametry_modul.CzyTak(uchwyt))and "(Rys. "..((numeracja)and (parametry_modul.CzyTak(bez_automatu) and uchwyt or numeracja) or "Niedopasowany uchwyt: "..uchwyt)..")" or "").." "..opis) or "").."]]";
divramka:wikitext(wywolanie_rysunku);
return tostring(divramka:allDone());
end;
local wypowiedzenie = function(uchwyt,przedrostek,numeracja,klasa,styl,przedrostek2,rodzaj,kogo,czego,jakie,styl_naglowka,styl_tekstu,tekst,bez_automatu)
local divramka=mw.html.create('div');
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',przedrostek.."_"..uchwyt);
else
divramka:attr('id',przedrostek.."_"..(numeracja or uchwyt));
end;
end;
divramka:attr('class',klasa);
divramka:attr('style',styl);
local wikitext="";
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
wikitext="("..przedrostek2.." "..uchwyt..")";
else
if(numeracja)then
wikitext="("..przedrostek2.." "..numeracja..")";
else
wikitext="("..przedrostek2.." Niedopawany uchwyt: "..uchwyt..")";
end;
end;
end;
if(parametry_modul.CzyTak(styl_naglowka))then
local spanramka=mw.html.create('span');
spanramka:attr('style',styl_naglowka);
spanramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
divramka:node(spanramka);
else
divramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
end;
divramka:wikitext('<BR>');
if(parametry_modul.CzyTak(styl_tekstu))then
local spanramka=mw.html.create('span');
spanramka:attr('style',styl_tekstu);
spanramka:wikitext(tekst);
divramka:node(spanramka);
else
divramka:wikitext(tekst);
end;
return tostring(divramka:allDone());
end;
local punkty = function(uchwyt,numeracja,przedrostek_id,klasa,styl,prefiks,bez_automatu)
local spanramka=mw.html.create('sup');
spanramka:attr('style',klasa);
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
spanramka:attr('id',przedrostek_id.."_"..uchwyt);
else
if(parametry_modul.CzyTak(numeracja))then
spanramka:attr('id',przedrostek_id.."_"..numeracja);
else
spanramka:attr('id',przedrostek_id.."_"..uchwyt);
end;
end;
end;
spanramka:attr('style',styl);
local smallramka=mw.html.create('small');
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
smallramka:wikitext(prefiks..": "..uchwyt);
else
if(parametry_modul.CzyTak(numeracja))then
smallramka:wikitext('['..prefiks..": "..numeracja..']');
else
smallramka:wikitext('['..prefiks..": Niedopsowany uchwyt: "..uchwyt..']');
end;
end;
else
smallramka:wikitext('['..prefiks..": Niedopasowany uchwyt: brak uchwytu]");
end;
spanramka:node(smallramka);
return tostring(spanramka:allDone());
end;
local nazwa_strony_fun=function(nazwa_strony)
if((tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni)
and(tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki==nazwa_ksiazki)
and (tabela_listy_danych_analizy_ksiazki.nazwa_artykulu==nazwa_artykulu))then
return "";
end;
return nazwa_strony;
end;
if(parametry_modul.CzyTak(frame.args["bez automatu"]))then
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
if(uchwyt_obiektu)then
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"]..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
else
return "("..link(nazwa_strony.."#"..frame.args["id"].."_".."Nieznany uchwyt",frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
end;
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,uchwyt_obiektu,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,uchwyt_obiektu,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],uchwyt_obiektu,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,uchwyt_obiektu,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return uchwyt_obiektu;
end;
else
return uchwyt_obiektu;
end;
end;
local tabela_listy_uchwytow_i_numeracji_na_stronie;
if(czy_aktualna_strona==nil)then
local dane_analizy_artykulu=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu;
if(dane_analizy_artykulu)then
local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni=dane_analizy_artykulu[nazwa_przestrzeni];
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni)then
local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
if(lista_artykolow)then
local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
if(tabela_listy_analizy_na_stronie)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
end;
end;
end;
end;
end;
elseif(czy_aktualna_strona==1)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_danych_analizy_ksiazki.tablica_aktualnego_artykolu;
if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_na_stronie,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
elseif(czy_aktualna_strona==2)then
tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_ksiazki;
if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
if(lista_artykolow)then
local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
if(tabela_listy_analizy_na_stronie)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
end;
end;
end;
end;
if(tabela_listy_uchwytow_i_numeracji_na_stronie)then
local spis_uchwytow=tabela_listy_uchwytow_i_numeracji_na_stronie[nazwa_obiektu];
if(spis_uchwytow)then
if((uchwyt_obiektu)and(uchwyt_obiektu~=""))then
for _, dany_artykul in ipairs(spis_uchwytow)do
if(dany_artykul[1]==uchwyt_obiektu)then
if(nazwa_obiektu~="Śródtytuł")then
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
if(not dany_artykul[2])then
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
end;
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..dany_artykul[2],frame.args["przedrostek"]..dany_artykul[2],frame.args["klasa"],frame.args["styl"])..")";
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,dany_artykul[2],frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,dany_artykul[2],frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],dany_artykul[2],frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,dany_artykul[2],frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
end;
else
return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
end;
else
if(dany_artykul[2])then
local tytul_szablonu=frame.args["nazwa szablonu"] or techniczne_modul.NazwaSzablonu(frame:getParent():getTitle());
if(tytul_szablonu=="LinkŚródtytuł")then
return link(dany_artykul[2][1],dany_artykul[2][2],frame.args["klasa"],frame.args["styl"])
elseif(tytul_szablonu=="LinkŚródtytułTutaj")then
return link(dany_artykul[2][1],"tutaj",frame.args["klasa"],frame.args["styl"])
end;
end;
end;
end;
end;
end;
end;
end;
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,nil,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,nil,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],nil,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,nil,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
else
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
end;
return p;
jo9s9zus3gsji87xdilxb4wtbl4q4j4
438988
438987
2022-08-28T18:31:00Z
Persino
2851
Scribunto
text/plain
local p={};
--zamykanie
local znak_127=mw.ustring.char(127);
function p.OgolnyWzor(numer_szablonu,co)
if(not numer_szablonu)then
local wzor=znak_127.."'\"`UNIQ%-%-"..(co or "TEMPLATE").."%-(%d+)%-QINU`\"'"..znak_127;
return wzor;
end;
local wzor=znak_127.."'\"`UNIQ%-%-"..(co or "TEMPLATE").."%-"..numer_szablonu.."%-QINU`\"'"..znak_127;
return wzor;
end;
function p.KodujStroneObiektowa(self,tekst_artykulu,nazwa_modolu,tablica_obiektow_strony_dany_modol)
local tab_self;
local function ZamieniajSzablonyStart(self,tablica_obiektow_strony_dany_modol)
tab_self.numer_szablonu={};
tab_self.numer_szablonu["TEMPLATE"]=1;
tab_self.numer_szablonu["LINKW"]=1;
tab_self.numer_szablonu["LINKZ"]=1;
tab_self.numer_szablonu["VAR"]=1;
tab_self.numer_szablonu["NOWIKI"]=1;
tab_self.numer_szablonu["MATH"]=1;
tab_self.numer_szablonu["PRE"]=1;
end;
local function ZamieniajSzablony(self,szablon,tablica_obiektow_strony,co,czy_nie_self)
local kod=znak_127.."'\"`UNIQ--"..(co or "TEMPLATE").."-"..self.numer_szablonu[co or "TEMPLATE"].."-QINU`\"'"..znak_127;
tablica_obiektow_strony[co or "TEMPLATE"][tab_self.numer_szablonu[co or "TEMPLATE"]]=szablon;
tab_self.numer_szablonu[co or "TEMPLATE"]=tab_self.numer_szablonu[co or "TEMPLATE"]+1;
return kod;
end;
if(not tablica_obiektow_strony_dany_modol)then
if(not self.tablica_obiektow_strony)then self.tablica_obiektow_strony={};end;
if(not self.tablica_obiektow_strony[nazwa_modolu])then self.tablica_obiektow_strony[nazwa_modolu]={};end;
---
tablica_obiektow_strony_dany_modol=self.tablica_obiektow_strony[nazwa_modolu];
tab_self=self;
ZamieniajSzablonyStart(self,nil);
else
tab_self=tablica_obiektow_strony_dany_modol;
ZamieniajSzablonyStart(self,tablica_obiektow_strony_dany_modol);
end;
tablica_obiektow_strony_dany_modol["TEMPLATE"]={};
tablica_obiektow_strony_dany_modol["LINKW"]={};
tablica_obiektow_strony_dany_modol["LINKZ"]={};
tablica_obiektow_strony_dany_modol["VAR"]={};
tablica_obiektow_strony_dany_modol["NOWIKI"]={};
tablica_obiektow_strony_dany_modol["MATH"]={};
tablica_obiektow_strony_dany_modol["PRE"]={};
---
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Pp][Rr][Ee]%s*>(.-)</%s*[Pp][Rr][Ee]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"PRE");end);
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Nn][Oo][Ww][Ii][Kk][Ii]%s*>(.-)</%s*[Nn][Oo][Ww][Ii][Kk][Ii]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"NOWIKI");end);
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Mm][Aa][Tt][Hh]%s*>(.-)</%s*[Mm][Aa][Tt][Hh]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"MATH");end);
local ile_var=0;local ile_linkw=0;local ile_linkz=0;local ile_template=0;
repeat
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"(%[%[[^%[%]]+%]%])",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"LINKW");end);
tekst_artykulu,ile_linkz=mw.ustring.gsub(tekst_artykulu,"(%[[^%[%]]+%])",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"LINKZ");end);
tekst_artykulu,ile_var=mw.ustring.gsub(tekst_artykulu,"({{{[^{}]-}}})",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"VAR");end);
tekst_artykulu,ile_template=mw.ustring.gsub(tekst_artykulu,"({{[^{}]-}})",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"TEMPLATE");end);
until ((ile_var==0)and(ile_linkw==0)and(ile_linkz==0)and(ile_template==0));
return tekst_artykulu;
end;
function p.IteratorSzablonu(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony)
if(not tablica_obiektow_strony)then tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modolu];end;
local iter=mw.ustring.gmatch(tekst_rozwiniety_calego_artykulu,p.OgolnyWzor(nil,"(%a+)"));
local tak=nil;
local szablon=nil;
local iter2=nil;
local function Iterator()
local function IterMain()
local obiekt,kod=iter();
if((not obiekt)or(not kod))then return nil;end;
kod=tonumber(kod);
szablon=tablica_obiektow_strony[obiekt][kod];
tak=true;
iter2=p.IteratorSzablonu(self,szablon,nil,tablica_obiektow_strony);
return szablon,kod,obiekt;
end;
if(not tak)then
local szablon,kod,obiekt=IterMain();
return szablon,kod,obiekt;
else
local szablon,kod,obiekt=iter2();
if((not szablon)or(not kod)or(not obiekt))then
tak=nil;
local szablon,kod,obiekt=IterMain();
return szablon,kod,obiekt;
else
return szablon,kod,obiekt;
end;
end;
end;
return Iterator;
end;
function p.SkladajSzablonoweWywolanie(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony,__funkcja)
local techniczne_modul=require("Module:Techniczne");
local iterator=p.IteratorSzablonu(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony);
for szablon,kod,obiekt in iterator do
szablon=((__funkcja)and __funkcja(szablon,kod,obiekt) or szablon);
szablon=techniczne_modul["TekstBezOdwołańDoParametrówWeWzorze"](szablon);
tekst_rozwiniety_calego_artykulu=mw.ustring.gsub(tekst_rozwiniety_calego_artykulu,p.OgolnyWzor(kod,obiekt),szablon);
end;
return tekst_rozwiniety_calego_artykulu;
end;
--koniec zamykanie
function p.LiczonyHNumer()
local ulozenie=nil;
local ostatnie=0;
local h_numer_zapamietane=nil;
return function(h_numer,h_numer_nowe,jakie)
if(not h_numer_nowe)then
if(not jakie)then
if(h_numer==0)then
return h_numer_zapamietane;
elseif(h_numer<0)then
h_numer=math.abs(h_numer);
end;
else
if(h_numer==0)then
h_numer_zapamietane=0;
return 0;
end;
end;
if((ulozenie==nil)or(ulozenie>=h_numer))then
ulozenie=h_numer-1;
elseif(ostatnie+1<h_numer-ulozenie)then
ulozenie=h_numer-ostatnie-1;
end;
ostatnie=h_numer-ulozenie;
h_numer=h_numer-ulozenie;
h_numer_zapamietane=h_numer;
return h_numer;
else
ulozenie=h_numer-h_numer_nowe;
ostatnie=h_numer-ulozenie;
return h_numer_nowe;
end;
end;
end;
function p.PoziomAdresu(adres)
local lens=#adres;
local i=1;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
end;
end;
return i;
end;
function p.NazwaNadStrony(adres,numer)
if((numer)and(numer==1))then return nil;end;
if((not numer)and(numer<1)or(numer~=math.floor(numer)))then return adres;end;
local lens=#adres;
local i=1;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
end;
if(i==numer)then
return mw.ustring.sub(adres,1,p-1);
end;
end;
return adres;
end;
function p.SubNazwaNadStrony(adres,numer,krok)
if((not numer)or(numer<1)or(numer~=math.floor(numer)))then return adres;end;
krok=krok or 1;
if((krok<1)or(krok~=math.floor(krok)))then return adres;end;
local lens=#adres;
local i=1;
local a=nil;local b=nil;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
if(i==numer)then
if(not a)then a=p+1;end;
end;
if(i==numer+krok)then
if(not b)then b=p-1;break;end;
end;
end;
end;
if(not a)then a=1;end;
if(not b)then b=lens;end;
return mw.ustring.sub(adres,a,b);
end;
function p.ParametryPudelkaKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
local nazwa_przestrzeni=self.args["nazwa przestrzeni nazw"];
local nazwa_jednostki=self.args["nazwa jednostki"];
if(((nazwa_przestrzeni)and(nazwa_jednostki))or((nazwa_przestrzeni)and(not nazwa_jednostki))or((not nazwa_przestrzeni)and(nazwa_jednostki)))then
if(nazwa_jednostki)then
local html_modul=require("Module:Html");
self.naglowek=html_modul["NagłówekStronyAdresu"](nazwa_jednostki,true);
self.parametry=html_modul["ParametryStronyAdresu"](nazwa_jednostki);
end;
local pudelko_modul=require("Module:Pudełko");
local nazwa_jednostki=pudelko_modul["Pełna nazwa jednostki 2"](frame);
local nazwy_modul=require("Module:Nazwy");
self.nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki);
self.nazwa_ksiazki=nazwy_modul["NAZWAKSIĄŻKI"](nazwa_jednostki);
self.nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](nazwa_jednostki);
else
local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
self.nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
self.nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
self.nazwa_artykulu=tabela_listy_danych_analizy_ksiazki.nazwa_artykulu;
end;
end;
function p.TabelaListyArtykulowKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
local nazwa_przestrzeni;local nazwa_ksiazki;
if(tabela_listy_danych_analizy_ksiazki.zastepczy)then
nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_przestrzeni;
nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_ksiazki;
else
nazwa_przestrzeni=self.nazwa_przestrzeni;
nazwa_ksiazki=self.nazwa_ksiazki;
end;
local lista_artykulow_w_ksiazkach_w_danej_przestrzeni=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu[nazwa_przestrzeni];
if(not lista_artykulow_w_ksiazkach_w_danej_przestrzeni)then return nil;end;
local tab_lista_artykulow_w_ksiazce=lista_artykulow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
return tab_lista_artykulow_w_ksiazce.spis;
end;
function p.AnalizujArgumentySzablonu(self,frame)
local parametry_modul=require("Module:Parametry");
self.args=parametry_modul.PobierzArgsParametry(frame,true);
end;
function p.Args(self)
return self.args;
end;
function p.PelnaNazwaKsiazki(self,frame)
return ((self.nazwa_przestrzeni~="")and(self.nazwa_przestrzeni..":") or "")..self.nazwa_ksiazki
end;
function p.NazwaArtykuluKsiazki(self,frame)
return self.nazwa_artykulu..(self.parametry and ("?"..self.parametry) or "")..(self.naglowek and ("#"..self.naglowek) or "");
end;
function p.ObliczeniaInformacje(self,frame)
p:AnalizujArgumentySzablonu(frame);
p:ParametryPudelkaKsiazki(frame);
local tab_lista_artykulow_w_ksiazce=p:TabelaListyArtykulowKsiazki(frame);
if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.CzyTak(self.args["nagłówek"]);
local tab_artykul_bez_naglowka=(not naglowek) and {} or nil;
self.tab_artykul={};
local html_modul=require("Module:Html");
for _,tab_lista in ipairs(tab_lista_artykulow_w_ksiazce)do
if(tab_lista[2])then
for _,artykul_w_bazie in ipairs(tab_lista[2])do
local artykul=(not naglowek) and html_modul["NazwaStronyAdresu"](artykul_w_bazie[1][1] or artykul_w_bazie[1]) or (artykul_w_bazie[1][1] or artykul_w_bazie[1]);
if(naglowek or not tab_artykul_bez_naglowka[artykul])then
if(not naglowek)then
tab_artykul_bez_naglowka[artykul]=true;
end;
table.insert(self.tab_artykul, parametry_modul.TypeTable(artykul_w_bazie[1]) and {artykul,artykul_w_bazie[1][2],} or artykul);
end;
end;
end;
end;
self.len_tab_artykul=#self.tab_artykul;
return true;
end;
function p.PomiedzyArtykul(self,frame)
self.numer=tonumber(frame.args[1]) or 1;
self.reszta=math.fmod(self.numer,self.len_tab_artykul-2)+1;
return self.tab_artykul[self.reszta+1];
end;
function p.LosowyArtykul(self,frame)
self.numer=tonumber(frame.args[1]) or 1;
self.reszta=math.fmod(self.numer,self.len_tab_artykul)+1;
return self.tab_artykul[self.reszta];
end;
function p.TOCSilnik(lista_elementow_spisu_tresci, atrybuty)
if(lista_elementow_spisu_tresci==nil)then return nil;end;
local twor_listy="";
local liczba_ulozenia_w_menu_spisu_tresci=lista_elementow_spisu_tresci[1][2];
local poziom=1;
local num={};
for licznik, element_w_tablicy in ipairs(lista_elementow_spisu_tresci) do
if(licznik==1)then
num[#num+1]=1;
twor_listy=(atrybuty and '<ul '..atrybuty..'>' or '<ul>')..'<li class=\"toclevel-1 tocsection-1\">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
else
if(element_w_tablicy[2]==liczba_ulozenia_w_menu_spisu_tresci)then
num[#num]=num[#num]+1;
twor_listy=twor_listy..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
elseif(element_w_tablicy[2]>liczba_ulozenia_w_menu_spisu_tresci)then
num[#num+1]=1;
poziom=poziom+1;
twor_listy=twor_listy..'<ul><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
elseif(element_w_tablicy[2]<liczba_ulozenia_w_menu_spisu_tresci)then
local num_length=#num;
for i=num_length,num_length-liczba_ulozenia_w_menu_spisu_tresci+element_w_tablicy[2]+1,-1 do
table.remove(num);
end;
num[#num]=num[#num]+1;
local roznica_poziomow=liczba_ulozenia_w_menu_spisu_tresci-element_w_tablicy[2];
poziom=poziom-roznica_poziomow;
twor_listy=twor_listy..mw.ustring.rep('</li></ul>',roznica_poziomow)..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'
.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
end;
end;
end;
twor_listy=twor_listy..mw.ustring.rep('</li></ul>',liczba_ulozenia_w_menu_spisu_tresci or 0);
return twor_listy;
end;
function p.TOC(frame,lista_elementow_spisu_tresci,czy_nie_aktualny,rozciagnij)
local twor_listy=p.TOCSilnik(lista_elementow_spisu_tresci);
local parametry_modul=require("Module:Parametry");
local frame=frame or mw.getCurrentFrame();
local args=frame.args;
local toc_czy_tocramka=parametry_modul.CzyTak(args["toc"]);
if(not toc_czy_tocramka)then
local czy_ukryte=twor_listy;
local funkcja=args["funkcja"] or "UkrytaWikitabelowaListaMenu";
local wysokosc=parametry_modul.CzyTak(args["wysokość"]) and args["wysokość"] or "700px";
local szerokosc=parametry_modul.CzyTak(args["szerokość"])and args["szerokość"] or "100%";
local spis_tresci=parametry_modul.CzyTak(args["spis treści"])and args["spis treści"] or "Spis treści";
local spis_artykulu=parametry_modul.CzyTak(args["spis artykułu"]);
local czy_bez_arginesu_dolnego=parametry_modul.CzyTak(args["bez marginesu dolnego"]);
local czy_z_marginesami_ramki=parametry_modul.CzyTak(args["z marginesami ramki"]);
local zawartosc_z_marginesami=parametry_modul.CzyTak(args["zawartość z marginesami"]);
twor_listy='<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..' mw-overflow-x mw-overflow-y mw-not-overflow-x" style="'..(zawartosc_z_marginesami and ("padding:"..args["zawartość z marginesami"])..";" or "")..'width:'..szerokosc..';max-height:'..wysokosc..';overflow:auto;padding-right:5px;box-sizing:border-box;">'..(czy_ukryte or "<ul></ul>").."</div>";
local wikikod_menu='{{Tabela nawigacyjna|styl='..((czy_z_marginesami_ramki) and ("margin:"..args["z marginesami ramki"])..";" or "")..((czy_bez_arginesu_dolnego) and 'margin-bottom:0;' or "")..(czy_ukryte and "" or "visibility:hidden")..';font-size:14px;background-color:white;line-height:1.2em;width:'..(rozciagnij and "100%" or "auto")..';box-sizing:border-box'..(spis_artykulu and ';border:#aaa 1px solid' or '')..'|tytuł=<div style="text-align:left;font-size:14px;background-color:white;line-height:1.2em;'..(spis_artykulu and ';border-bottom:#aaa 1px solid' or '')..';white-space:nowrap;min-width:130px;">'..spis_tresci..'</div>|spis='..twor_listy..'|funkcja='..funkcja..'|klasa=spis_treści}}';
local rozwiniety_wikikod=frame:preprocess(wikikod_menu);
return rozwiniety_wikikod;
else
return (twor_listy and ('\n=Spis treści=\n<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..'" style="margin-left:10px">'..twor_listy..'</div>') or "");
end;
end;
function p.AnalizaSzablonuStronicowegoParsera(self,uzyskano_w_wyniku_parsowania_wywolanie_szablonu,kod,obiekt,nazwa_modolu,__Funkcja, __Funkcja2)
if(obiekt~="TEMPLATE")then return;end;
uzyskano_w_wyniku_parsowania_wywolanie_szablonu=mw.ustring.gsub(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,"\n+","");
local tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modolu];
--mw.logObject(tablica_obiektow_strony,nazwa_modolu);
local function GlownaFunkcja(wywolanie,oznaczenie_szablonu)
local techniczne_modul=require("Module:Techniczne");
local tabela_parametrow_szablonu=techniczne_modul["ParsujWywołanieSzablonu"](wywolanie);
if(not tabela_parametrow_szablonu)then return nil;end;
__Funkcja(tabela_parametrow_szablonu,wywolanie);
if(__Funkcja2)then
__Funkcja2(oznaczenie_szablonu,wywolanie,tabela_parametrow_szablonu,uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
end;
end;
GlownaFunkcja(uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
end;
function p.AnalizujLinkSzablonyOrazLinki(wyzyskane_wywolanie_szablonu_spis_tresci,nazwa_przestrzeni,nazwa_ksiazki,__FUNKCJA)
local pozycja_artykulu=nil;local nazwa=nil;
local pozycja_artykulu,nazwa=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)|([^%[%]{}]+)%]%]$")
if(not((pozycja_artykulu)and(nazwa)))then
pozycja_artykulu=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)%]%]$");
end;
local function Artykul(strona)
local nazwy_modul=require("Module:Nazwy");
local html_modul=require("Module:Html");
local parametry=html_modul["ParametryStronyAdresu"](strona);
local naglowek=html_modul["NagłówekStronyAdresu"](strona);
local nazwa_przestrzeni_strony=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_ksiazki_strony=nazwy_modul["NAZWAKSIĄŻKI"](strona);
local nazwa_artykulu_strony=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona);
if((nazwa_przestrzeni_strony==nazwa_przestrzeni)and(nazwa_ksiazki_strony==nazwa_ksiazki))then
return nazwa_artykulu_strony..(parametry and ("?"..parametry) or "")..(naglowek and ("#"..naglowek) or "");
else
return;
end;
end;
local id=nil;
local parametry;
local czy_pozycja_artykulu=nil;
if(not pozycja_artykulu)then
local link_szablon=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"({{[^{}]+}})");
if(link_szablon)then
local techniczne_modul=require("Module:Techniczne");
parametry=techniczne_modul["ParsujWywołanieSzablonu"](link_szablon);
local szablon=parametry[0];
if(szablon=="SpisTreści")then
pozycja_artykulu=parametry[1];
id=true;
elseif(szablon=="Sekcja referencyjna")then
local podstrona=parametry[3] or parametry["podstrona"];
local strona=parametry[1] or parametry["strona"];
if(not strona)then
local nazwy_modul=require("Module:Nazwy");
pozycja_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"]();
else
pozycja_artykulu=(((podstrona) and (podstrona~="")) and (podstrona..((not mw.ustring.match(strona,"^#")) and "/" or "")) or "")..strona;
end;
nazwa=parametry["nazwa"] or parametry[2];
else
if(szablon=="Link wewnętrzny")then
local strona=parametry["strona"];
nazwa=parametry["nazwa"];
pozycja_artykulu=Artykul(strona);
czy_pozycja_artykulu=strona;
elseif(szablon=="LinkOgólne")then
local strona=parametry[1];
nazwa=parametry[2];
local miano_przestrzeni_nazw=parametry["miano przestrzeni nazw"];
if(miano_przestrzeni_nazw)then
czy_pozycja_artykulu=((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw..":") or "")..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
else
pozycja_artykulu=Artykul(parametry[1])
czy_pozycja_artykulu=parametry[1];
end;
elseif(szablon=="LinkGłówna")then
pozycja_artykulu=Artykul(parametry[1])
czy_pozycja_artykulu=parametry[1];
nazwa=parametry[2];
elseif((szablon=="LinkWikijunior")or(szablon=="LinkWikijunior2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.Wikijunior..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((szablon=="LinkProjekt")or(szablon=="LinkProjekt2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.Wikibooks..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((szablon=="LinkUżytkownik")or(szablon=="LinkUżytkownik2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.User..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((__FUNKCJA)and(__FUNKCJA(parametry)))then
return nil,nil,false,parametry,true;
end;
end;
end;
else
local parametry_modul=require("Module:Parametry");
pozycja_artykulu=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=pozycja_artykulu,[2]="tak",});
local czy_pozycja_artykulu=mw.ustring.match(pozycja_artykulu,"^/(.-)/+$") or mw.ustring.match(pozycja_artykulu,"^/(.+)$");
if(czy_pozycja_artykulu)then
if(parametry_modul["CzyTakCiąg"](czy_pozycja_artykulu))then
pozycja_artykulu=czy_pozycja_artykulu;
else
pozycja_artykulu=nil;
end;
else
local czy_pozycja_artykulu=pozycja_artykulu;
pozycja_artykulu=Artykul(pozycja_artykulu);
if((not pozycja_artykulu)and(czy_pozycja_artykulu)and(not mw.ustring.match(czy_pozycja_artykulu,"[{}%[%]|]")))then
local kod_jezyka_koncowy="pl";
local kod_projektu_koncowy="b";
local linki_modul=require("Module:Linki");
local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=linki_modul.KodyNazwyStrony(czy_pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy,{});
return nil,{nazwa_strony_linku,nazwa,kod_jezyka_koncowy,kod_projektu_koncowy,},false,nil,false;
else
return {pozycja_artykulu,nazwa},nil,false,nil,false;
end;
end;
end;
if((not pozycja_artykulu)and(czy_pozycja_artykulu))then
local wiki_modul=require("Module:Wiki");
local kod_jezyka_koncowy,kod_projektu_koncowy=wiki_modul.KodyWiki(parametry["klucz projektu"],parametry["kod jezyka"],parametry["kod projektu"]);
local linki_modul=require("Module:Linki");
local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=linki_modul.KodyNazwyStrony(czy_pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy,{});
return nil,{nazwa_strony_linku,parametry[2],kod_jezyka_koncowy,kod_projektu_koncowy},false,nil,false;
end;
return {pozycja_artykulu,nazwa},nil,id,parametry,false;
end;
function p.NumerObiektu(frame, nazwa_obiektu)
local pf=frame:getParent();
local parametry_modul=require("Module:Parametry");
local uchwyt_obiektu=(frame.args["uchwyt"])and parametry_modul["Odstępy"](frame.args["uchwyt"]) or nil;
local nazwa_strony;
local html_modul=require("Module:Html");
local nazwy_modul=require("Module:Nazwy");
local ksiazkowe_modul=require("Module:Książkowe");
local techniczne_modul=require("Module:Techniczne");
local nazwa_przestrzeni;local nazwa_ksiazki;local nazwa_artykulu;
nazwa_artykulu=frame.args["nazwa artykułu"];
nazwa_ksiazki=frame.args["nazwa książki"];
local tabela_listy_danych_analizy_ksiazki=mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
if(not parametry_modul.CzyTak{[1]=tabela_listy_danych_analizy_ksiazki,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
local czy_aktualna_strona=nil;
if((not nazwa_artykulu)and(not nazwa_ksiazki))then
czy_aktualna_strona=1;
nazwa_strony="";
elseif((nazwa_artykulu)and(not nazwa_ksiazki))then
czy_aktualna_strona=2;
nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," ");
nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
else
nazwa_ksiazki=ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"](nazwa_ksiazki);
nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_ksiazki);
nazwa_ksiazki=ksiazkowe_modul["NazwaKsiążki"](nazwa_ksiazki);
nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," ");
nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
end;
local link = function(adres_linku,nazwa_linku,klasa,styl)
local czy_klasa=parametry_modul.CzyTak(klasa);
local czy_styl=parametry_modul.CzyTak(styl);
if(czy_klasa or czy_styl)then
spanramka=mw.html.create('span');
if(czy_klasa)then spanramka:attr("class",klasa);end;
if(czy_styl)then spanramka:attr('style',styl);end;
spanramka:wikitext(nazwa_linku);
local kod_html=spanramka:allDone();
return "[["..adres_linku.."|"..tostring(kod_html).."]]";
else
return "[["..adres_linku.."|"..nazwa_linku.."]]";
end;
end;
local wzor = function(uchwyt,numeracja,styl_main,styl_odstepu,pole_odstepu,styl_wzoru,klasa_wzoru,wzor,opis,opis2,klasa_opisu,styl_opisu,styl_opisu_2,wzor_opisu,wzor_opisu_2,styl_alternatywy_opisu,styl_alternatywy_opisu_2,pozycja_numeracji,klasa_numeracji,styl_numeracji,bez_automatu)
divramka=mw.html.create('div');
local parametry_modul=require("Module:Parametry");
local czy_pozycja_numeracji_prawa=parametry_modul.CzyTak(pozycja_numeracji);
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',"wzór_"..uchwyt);
else
if(numeracja)then
divramka:attr('id',"wzór_"..numeracja);
else
divramka:attr('id',"wzór_"..uchwyt);
end;
end;
end;
if(parametry_modul.CzyTak(styl_main))then
divramka:attr('style',styl_main);
end;
local uchwyt_fun=function()
if(parametry_modul.CzyTak(uchwyt))then
local divuchwytramka=mw.html.create('div');
divuchwytramka:attr('class',klasa_numeracji);
divuchwytramka:attr('style',styl_numeracji);
if(parametry_modul.CzyTak(bez_automatu))then
divuchwytramka:wikitext('(',uchwyt..")");
else
if(numeracja)then
divuchwytramka:wikitext('('..numeracja..")");
else
divuchwytramka:wikitext("(Niedopasowany uchwyt: "..uchwyt..")");
end;
end;
divramka:node(divuchwytramka);
end;
end;
local pole_odstepu_fun=function()
divramka:addClass("wzory");
local divramka2=mw.html.create('div');
divramka2:attr('style',styl_odstepu);
divramka2:wikitext(pole_odstepu);
divramka:node(divramka2);
end;
local opis_fun=function(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu)
if(parametry_modul.CzyTak(opis))then
local divramka5=mw.html.create('div')
divramka5:attr('class',klasa_opisu)
divramka5:attr('style',styl_opisu)
divramka5:wikitext(wzor_opisu)
divramka:node(divramka5)
else
local divramka5=mw.html.create('div');
divramka5:attr('style',styl_alternatywy_opisu);
divramka:node(divramka5)
end;
end;
if(not czy_pozycja_numeracji_prawa)then
uchwyt_fun();
else
pole_odstepu_fun();
end;
opis_fun(opis2,styl_opisu_2,wzor_opisu_2,styl_alternatywy_opisu_2);
local divramka4=mw.html.create('div');
divramka4:attr('class',klasa_wzoru);
divramka4:attr('style',styl_wzoru);
divramka4:wikitext(wzor);
divramka:node(divramka4);
opis_fun(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu);
if(czy_pozycja_numeracji_prawa)then
uchwyt_fun();
else
pole_odstepu_fun();
end;
return tostring(divramka:allDone());
end;
local rysunek=function(uchwyt,numeracja,opis, rysunek, pozycja,rozmiar,klasa,styl,bez_automatu)
local divramka=mw.html.create('div');
divramka:attr('class',klasa);
divramka:attr('style',styl);
local czy_uchwyt=parametry_modul.CzyTak(uchwyt);
if(czy_uchwyt)then
if(numeracja)then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',"rysunek_"..uchwyt);
else
divramka:attr('id',"rysunek_"..numeracja);
end;
else
divramka:attr('id',"rysunek_"..uchwyt);
end;
end;
local czy_opis=parametry_modul.CzyTak(opis);
local wywolanie_rysunku="[[File:"..((rysunek)and rysunek or "Przykładowy rysunek.svg").."|thumb|"..(pozycja or "right").."|"..(rozmiar or "200px")..((czy_uchwyt or czy_opis)and ("|"..((parametry_modul.CzyTak(uchwyt))and "(Rys. "..((numeracja)and (parametry_modul.CzyTak(bez_automatu) and uchwyt or numeracja) or "Niedopasowany uchwyt: "..uchwyt)..")" or "").." "..opis) or "").."]]";
divramka:wikitext(wywolanie_rysunku);
return tostring(divramka:allDone());
end;
local wypowiedzenie = function(uchwyt,przedrostek,numeracja,klasa,styl,przedrostek2,rodzaj,kogo,czego,jakie,styl_naglowka,styl_tekstu,tekst,bez_automatu)
local divramka=mw.html.create('div');
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',przedrostek.."_"..uchwyt);
else
divramka:attr('id',przedrostek.."_"..(numeracja or uchwyt));
end;
end;
divramka:attr('class',klasa);
divramka:attr('style',styl);
local wikitext="";
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
wikitext="("..przedrostek2.." "..uchwyt..")";
else
if(numeracja)then
wikitext="("..przedrostek2.." "..numeracja..")";
else
wikitext="("..przedrostek2.." Niedopawany uchwyt: "..uchwyt..")";
end;
end;
end;
if(parametry_modul.CzyTak(styl_naglowka))then
local spanramka=mw.html.create('span');
spanramka:attr('style',styl_naglowka);
spanramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
divramka:node(spanramka);
else
divramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
end;
divramka:wikitext('<BR>');
if(parametry_modul.CzyTak(styl_tekstu))then
local spanramka=mw.html.create('span');
spanramka:attr('style',styl_tekstu);
spanramka:wikitext(tekst);
divramka:node(spanramka);
else
divramka:wikitext(tekst);
end;
return tostring(divramka:allDone());
end;
local punkty = function(uchwyt,numeracja,przedrostek_id,klasa,styl,prefiks,bez_automatu)
local spanramka=mw.html.create('sup');
spanramka:attr('style',klasa);
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
spanramka:attr('id',przedrostek_id.."_"..uchwyt);
else
if(parametry_modul.CzyTak(numeracja))then
spanramka:attr('id',przedrostek_id.."_"..numeracja);
else
spanramka:attr('id',przedrostek_id.."_"..uchwyt);
end;
end;
end;
spanramka:attr('style',styl);
local smallramka=mw.html.create('small');
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
smallramka:wikitext(prefiks..": "..uchwyt);
else
if(parametry_modul.CzyTak(numeracja))then
smallramka:wikitext('['..prefiks..": "..numeracja..']');
else
smallramka:wikitext('['..prefiks..": Niedopsowany uchwyt: "..uchwyt..']');
end;
end;
else
smallramka:wikitext('['..prefiks..": Niedopasowany uchwyt: brak uchwytu]");
end;
spanramka:node(smallramka);
return tostring(spanramka:allDone());
end;
local nazwa_strony_fun=function(nazwa_strony)
if((tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni)
and(tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki==nazwa_ksiazki)
and (tabela_listy_danych_analizy_ksiazki.nazwa_artykulu==nazwa_artykulu))then
return "";
end;
return nazwa_strony;
end;
if(parametry_modul.CzyTak(frame.args["bez automatu"]))then
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
if(uchwyt_obiektu)then
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"]..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
else
return "("..link(nazwa_strony.."#"..frame.args["id"].."_".."Nieznany uchwyt",frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
end;
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,uchwyt_obiektu,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,uchwyt_obiektu,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],uchwyt_obiektu,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,uchwyt_obiektu,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return uchwyt_obiektu;
end;
else
return uchwyt_obiektu;
end;
end;
local tabela_listy_uchwytow_i_numeracji_na_stronie;
if(czy_aktualna_strona==nil)then
local dane_analizy_artykulu=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu;
if(dane_analizy_artykulu)then
local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni=dane_analizy_artykulu[nazwa_przestrzeni];
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni)then
local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
if(lista_artykolow)then
local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
if(tabela_listy_analizy_na_stronie)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
end;
end;
end;
end;
end;
elseif(czy_aktualna_strona==1)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_danych_analizy_ksiazki.tablica_aktualnego_artykolu;
if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_na_stronie,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
elseif(czy_aktualna_strona==2)then
tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_ksiazki;
if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
if(lista_artykolow)then
local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
if(tabela_listy_analizy_na_stronie)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
end;
end;
end;
end;
if(tabela_listy_uchwytow_i_numeracji_na_stronie)then
local spis_uchwytow=tabela_listy_uchwytow_i_numeracji_na_stronie[nazwa_obiektu];
if(spis_uchwytow)then
if((uchwyt_obiektu)and(uchwyt_obiektu~=""))then
for _, dany_artykul in ipairs(spis_uchwytow)do
if(dany_artykul[1]==uchwyt_obiektu)then
if(nazwa_obiektu~="Śródtytuł")then
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
if(not dany_artykul[2])then
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
end;
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..dany_artykul[2],frame.args["przedrostek"]..dany_artykul[2],frame.args["klasa"],frame.args["styl"])..")";
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,dany_artykul[2],frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,dany_artykul[2],frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],dany_artykul[2],frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,dany_artykul[2],frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
end;
else
return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
end;
else
if(dany_artykul[2])then
local tytul_szablonu=frame.args["nazwa szablonu"] or techniczne_modul.NazwaSzablonu(frame:getParent():getTitle());
if(tytul_szablonu=="LinkŚródtytuł")then
return link(dany_artykul[2][1],dany_artykul[2][2],frame.args["klasa"],frame.args["styl"])
elseif(tytul_szablonu=="LinkŚródtytułTutaj")then
return link(dany_artykul[2][1],"tutaj",frame.args["klasa"],frame.args["styl"])
end;
end;
end;
end;
end;
end;
end;
end;
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,nil,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,nil,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],nil,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,nil,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
else
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
end;
return p;
29ps26ancupkzf65frs58mrc0x4m250
439019
438988
2022-08-29T07:12:52Z
Persino
2851
Scribunto
text/plain
local p={};
--zamykanie
local znak_127=mw.ustring.char(127);
function p.OgolnyWzor(numer_szablonu,co)
if(not numer_szablonu)then
local wzor=znak_127.."'\"`UNIQ%-%-"..(co or "TEMPLATE").."%-(%d+)%-QINU`\"'"..znak_127;
return wzor;
end;
local wzor=znak_127.."'\"`UNIQ%-%-"..(co or "TEMPLATE").."%-"..numer_szablonu.."%-QINU`\"'"..znak_127;
return wzor;
end;
function p.KodujStroneObiektowa(self,tekst_artykulu,nazwa_modolu,tablica_obiektow_strony_dany_modol)
local tab_self;
local function ZamieniajSzablonyStart(self,tablica_obiektow_strony_dany_modol)
tab_self.numer_szablonu={};
tab_self.numer_szablonu["TEMPLATE"]=1;
tab_self.numer_szablonu["LINKW"]=1;
tab_self.numer_szablonu["LINKZ"]=1;
tab_self.numer_szablonu["VAR"]=1;
tab_self.numer_szablonu["NOWIKI"]=1;
tab_self.numer_szablonu["MATH"]=1;
tab_self.numer_szablonu["PRE"]=1;
end;
local function ZamieniajSzablony(self,szablon,tablica_obiektow_strony,co,czy_nie_self)
local kod=znak_127.."'\"`UNIQ--"..(co or "TEMPLATE").."-"..tab_self.numer_szablonu[co or "TEMPLATE"].."-QINU`\"'"..znak_127;
tablica_obiektow_strony[co or "TEMPLATE"][tab_self.numer_szablonu[co or "TEMPLATE"]]=szablon;
tab_self.numer_szablonu[co or "TEMPLATE"]=tab_self.numer_szablonu[co or "TEMPLATE"]+1;
return kod;
end;
if(not tablica_obiektow_strony_dany_modol)then
if(not self.tablica_obiektow_strony)then self.tablica_obiektow_strony={};end;
if(not self.tablica_obiektow_strony[nazwa_modolu])then self.tablica_obiektow_strony[nazwa_modolu]={};end;
---
tablica_obiektow_strony_dany_modol=self.tablica_obiektow_strony[nazwa_modolu];
tab_self=self;
ZamieniajSzablonyStart(self,nil);
else
tab_self=tablica_obiektow_strony_dany_modol;
ZamieniajSzablonyStart(self,tablica_obiektow_strony_dany_modol);
end;
tablica_obiektow_strony_dany_modol["TEMPLATE"]={};
tablica_obiektow_strony_dany_modol["LINKW"]={};
tablica_obiektow_strony_dany_modol["LINKZ"]={};
tablica_obiektow_strony_dany_modol["VAR"]={};
tablica_obiektow_strony_dany_modol["NOWIKI"]={};
tablica_obiektow_strony_dany_modol["MATH"]={};
tablica_obiektow_strony_dany_modol["PRE"]={};
---
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Pp][Rr][Ee]%s*>(.-)</%s*[Pp][Rr][Ee]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"PRE");end);
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Nn][Oo][Ww][Ii][Kk][Ii]%s*>(.-)</%s*[Nn][Oo][Ww][Ii][Kk][Ii]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"NOWIKI");end);
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Mm][Aa][Tt][Hh]%s*>(.-)</%s*[Mm][Aa][Tt][Hh]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"MATH");end);
local ile_var=0;local ile_linkw=0;local ile_linkz=0;local ile_template=0;
repeat
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"(%[%[[^%[%]]+%]%])",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"LINKW");end);
tekst_artykulu,ile_linkz=mw.ustring.gsub(tekst_artykulu,"(%[[^%[%]]+%])",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"LINKZ");end);
tekst_artykulu,ile_var=mw.ustring.gsub(tekst_artykulu,"({{{[^{}]-}}})",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"VAR");end);
tekst_artykulu,ile_template=mw.ustring.gsub(tekst_artykulu,"({{[^{}]-}})",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"TEMPLATE");end);
until ((ile_var==0)and(ile_linkw==0)and(ile_linkz==0)and(ile_template==0));
return tekst_artykulu;
end;
function p.IteratorSzablonu(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony)
if(not tablica_obiektow_strony)then tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modolu];end;
local iter=mw.ustring.gmatch(tekst_rozwiniety_calego_artykulu,p.OgolnyWzor(nil,"(%a+)"));
local tak=nil;
local szablon=nil;
local iter2=nil;
local function Iterator()
local function IterMain()
local obiekt,kod=iter();
if((not obiekt)or(not kod))then return nil;end;
kod=tonumber(kod);
szablon=tablica_obiektow_strony[obiekt][kod];
tak=true;
iter2=p.IteratorSzablonu(self,szablon,nil,tablica_obiektow_strony);
return szablon,kod,obiekt;
end;
if(not tak)then
local szablon,kod,obiekt=IterMain();
return szablon,kod,obiekt;
else
local szablon,kod,obiekt=iter2();
if((not szablon)or(not kod)or(not obiekt))then
tak=nil;
local szablon,kod,obiekt=IterMain();
return szablon,kod,obiekt;
else
return szablon,kod,obiekt;
end;
end;
end;
return Iterator;
end;
function p.SkladajSzablonoweWywolanie(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony,__funkcja)
local techniczne_modul=require("Module:Techniczne");
local iterator=p.IteratorSzablonu(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony);
for szablon,kod,obiekt in iterator do
szablon=((__funkcja)and __funkcja(szablon,kod,obiekt) or szablon);
szablon=techniczne_modul["TekstBezOdwołańDoParametrówWeWzorze"](szablon);
tekst_rozwiniety_calego_artykulu=mw.ustring.gsub(tekst_rozwiniety_calego_artykulu,p.OgolnyWzor(kod,obiekt),szablon);
end;
return tekst_rozwiniety_calego_artykulu;
end;
--koniec zamykanie
function p.LiczonyHNumer()
local ulozenie=nil;
local ostatnie=0;
local h_numer_zapamietane=nil;
return function(h_numer,h_numer_nowe,jakie)
if(not h_numer_nowe)then
if(not jakie)then
if(h_numer==0)then
return h_numer_zapamietane;
elseif(h_numer<0)then
h_numer=math.abs(h_numer);
end;
else
if(h_numer==0)then
h_numer_zapamietane=0;
return 0;
end;
end;
if((ulozenie==nil)or(ulozenie>=h_numer))then
ulozenie=h_numer-1;
elseif(ostatnie+1<h_numer-ulozenie)then
ulozenie=h_numer-ostatnie-1;
end;
ostatnie=h_numer-ulozenie;
h_numer=h_numer-ulozenie;
h_numer_zapamietane=h_numer;
return h_numer;
else
ulozenie=h_numer-h_numer_nowe;
ostatnie=h_numer-ulozenie;
return h_numer_nowe;
end;
end;
end;
function p.PoziomAdresu(adres)
local lens=#adres;
local i=1;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
end;
end;
return i;
end;
function p.NazwaNadStrony(adres,numer)
if((numer)and(numer==1))then return nil;end;
if((not numer)and(numer<1)or(numer~=math.floor(numer)))then return adres;end;
local lens=#adres;
local i=1;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
end;
if(i==numer)then
return mw.ustring.sub(adres,1,p-1);
end;
end;
return adres;
end;
function p.SubNazwaNadStrony(adres,numer,krok)
if((not numer)or(numer<1)or(numer~=math.floor(numer)))then return adres;end;
krok=krok or 1;
if((krok<1)or(krok~=math.floor(krok)))then return adres;end;
local lens=#adres;
local i=1;
local a=nil;local b=nil;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
if(i==numer)then
if(not a)then a=p+1;end;
end;
if(i==numer+krok)then
if(not b)then b=p-1;break;end;
end;
end;
end;
if(not a)then a=1;end;
if(not b)then b=lens;end;
return mw.ustring.sub(adres,a,b);
end;
function p.ParametryPudelkaKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
local nazwa_przestrzeni=self.args["nazwa przestrzeni nazw"];
local nazwa_jednostki=self.args["nazwa jednostki"];
if(((nazwa_przestrzeni)and(nazwa_jednostki))or((nazwa_przestrzeni)and(not nazwa_jednostki))or((not nazwa_przestrzeni)and(nazwa_jednostki)))then
if(nazwa_jednostki)then
local html_modul=require("Module:Html");
self.naglowek=html_modul["NagłówekStronyAdresu"](nazwa_jednostki,true);
self.parametry=html_modul["ParametryStronyAdresu"](nazwa_jednostki);
end;
local pudelko_modul=require("Module:Pudełko");
local nazwa_jednostki=pudelko_modul["Pełna nazwa jednostki 2"](frame);
local nazwy_modul=require("Module:Nazwy");
self.nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki);
self.nazwa_ksiazki=nazwy_modul["NAZWAKSIĄŻKI"](nazwa_jednostki);
self.nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](nazwa_jednostki);
else
local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
self.nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
self.nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
self.nazwa_artykulu=tabela_listy_danych_analizy_ksiazki.nazwa_artykulu;
end;
end;
function p.TabelaListyArtykulowKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
local nazwa_przestrzeni;local nazwa_ksiazki;
if(tabela_listy_danych_analizy_ksiazki.zastepczy)then
nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_przestrzeni;
nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_ksiazki;
else
nazwa_przestrzeni=self.nazwa_przestrzeni;
nazwa_ksiazki=self.nazwa_ksiazki;
end;
local lista_artykulow_w_ksiazkach_w_danej_przestrzeni=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu[nazwa_przestrzeni];
if(not lista_artykulow_w_ksiazkach_w_danej_przestrzeni)then return nil;end;
local tab_lista_artykulow_w_ksiazce=lista_artykulow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
return tab_lista_artykulow_w_ksiazce.spis;
end;
function p.AnalizujArgumentySzablonu(self,frame)
local parametry_modul=require("Module:Parametry");
self.args=parametry_modul.PobierzArgsParametry(frame,true);
end;
function p.Args(self)
return self.args;
end;
function p.PelnaNazwaKsiazki(self,frame)
return ((self.nazwa_przestrzeni~="")and(self.nazwa_przestrzeni..":") or "")..self.nazwa_ksiazki
end;
function p.NazwaArtykuluKsiazki(self,frame)
return self.nazwa_artykulu..(self.parametry and ("?"..self.parametry) or "")..(self.naglowek and ("#"..self.naglowek) or "");
end;
function p.ObliczeniaInformacje(self,frame)
p:AnalizujArgumentySzablonu(frame);
p:ParametryPudelkaKsiazki(frame);
local tab_lista_artykulow_w_ksiazce=p:TabelaListyArtykulowKsiazki(frame);
if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.CzyTak(self.args["nagłówek"]);
local tab_artykul_bez_naglowka=(not naglowek) and {} or nil;
self.tab_artykul={};
local html_modul=require("Module:Html");
for _,tab_lista in ipairs(tab_lista_artykulow_w_ksiazce)do
if(tab_lista[2])then
for _,artykul_w_bazie in ipairs(tab_lista[2])do
local artykul=(not naglowek) and html_modul["NazwaStronyAdresu"](artykul_w_bazie[1][1] or artykul_w_bazie[1]) or (artykul_w_bazie[1][1] or artykul_w_bazie[1]);
if(naglowek or not tab_artykul_bez_naglowka[artykul])then
if(not naglowek)then
tab_artykul_bez_naglowka[artykul]=true;
end;
table.insert(self.tab_artykul, parametry_modul.TypeTable(artykul_w_bazie[1]) and {artykul,artykul_w_bazie[1][2],} or artykul);
end;
end;
end;
end;
self.len_tab_artykul=#self.tab_artykul;
return true;
end;
function p.PomiedzyArtykul(self,frame)
self.numer=tonumber(frame.args[1]) or 1;
self.reszta=math.fmod(self.numer,self.len_tab_artykul-2)+1;
return self.tab_artykul[self.reszta+1];
end;
function p.LosowyArtykul(self,frame)
self.numer=tonumber(frame.args[1]) or 1;
self.reszta=math.fmod(self.numer,self.len_tab_artykul)+1;
return self.tab_artykul[self.reszta];
end;
function p.TOCSilnik(lista_elementow_spisu_tresci, atrybuty)
if(lista_elementow_spisu_tresci==nil)then return nil;end;
local twor_listy="";
local liczba_ulozenia_w_menu_spisu_tresci=lista_elementow_spisu_tresci[1][2];
local poziom=1;
local num={};
for licznik, element_w_tablicy in ipairs(lista_elementow_spisu_tresci) do
if(licznik==1)then
num[#num+1]=1;
twor_listy=(atrybuty and '<ul '..atrybuty..'>' or '<ul>')..'<li class=\"toclevel-1 tocsection-1\">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
else
if(element_w_tablicy[2]==liczba_ulozenia_w_menu_spisu_tresci)then
num[#num]=num[#num]+1;
twor_listy=twor_listy..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
elseif(element_w_tablicy[2]>liczba_ulozenia_w_menu_spisu_tresci)then
num[#num+1]=1;
poziom=poziom+1;
twor_listy=twor_listy..'<ul><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
elseif(element_w_tablicy[2]<liczba_ulozenia_w_menu_spisu_tresci)then
local num_length=#num;
for i=num_length,num_length-liczba_ulozenia_w_menu_spisu_tresci+element_w_tablicy[2]+1,-1 do
table.remove(num);
end;
num[#num]=num[#num]+1;
local roznica_poziomow=liczba_ulozenia_w_menu_spisu_tresci-element_w_tablicy[2];
poziom=poziom-roznica_poziomow;
twor_listy=twor_listy..mw.ustring.rep('</li></ul>',roznica_poziomow)..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'
.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
end;
end;
end;
twor_listy=twor_listy..mw.ustring.rep('</li></ul>',liczba_ulozenia_w_menu_spisu_tresci or 0);
return twor_listy;
end;
function p.TOC(frame,lista_elementow_spisu_tresci,czy_nie_aktualny,rozciagnij)
local twor_listy=p.TOCSilnik(lista_elementow_spisu_tresci);
local parametry_modul=require("Module:Parametry");
local frame=frame or mw.getCurrentFrame();
local args=frame.args;
local toc_czy_tocramka=parametry_modul.CzyTak(args["toc"]);
if(not toc_czy_tocramka)then
local czy_ukryte=twor_listy;
local funkcja=args["funkcja"] or "UkrytaWikitabelowaListaMenu";
local wysokosc=parametry_modul.CzyTak(args["wysokość"]) and args["wysokość"] or "700px";
local szerokosc=parametry_modul.CzyTak(args["szerokość"])and args["szerokość"] or "100%";
local spis_tresci=parametry_modul.CzyTak(args["spis treści"])and args["spis treści"] or "Spis treści";
local spis_artykulu=parametry_modul.CzyTak(args["spis artykułu"]);
local czy_bez_arginesu_dolnego=parametry_modul.CzyTak(args["bez marginesu dolnego"]);
local czy_z_marginesami_ramki=parametry_modul.CzyTak(args["z marginesami ramki"]);
local zawartosc_z_marginesami=parametry_modul.CzyTak(args["zawartość z marginesami"]);
twor_listy='<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..' mw-overflow-x mw-overflow-y mw-not-overflow-x" style="'..(zawartosc_z_marginesami and ("padding:"..args["zawartość z marginesami"])..";" or "")..'width:'..szerokosc..';max-height:'..wysokosc..';overflow:auto;padding-right:5px;box-sizing:border-box;">'..(czy_ukryte or "<ul></ul>").."</div>";
local wikikod_menu='{{Tabela nawigacyjna|styl='..((czy_z_marginesami_ramki) and ("margin:"..args["z marginesami ramki"])..";" or "")..((czy_bez_arginesu_dolnego) and 'margin-bottom:0;' or "")..(czy_ukryte and "" or "visibility:hidden")..';font-size:14px;background-color:white;line-height:1.2em;width:'..(rozciagnij and "100%" or "auto")..';box-sizing:border-box'..(spis_artykulu and ';border:#aaa 1px solid' or '')..'|tytuł=<div style="text-align:left;font-size:14px;background-color:white;line-height:1.2em;'..(spis_artykulu and ';border-bottom:#aaa 1px solid' or '')..';white-space:nowrap;min-width:130px;">'..spis_tresci..'</div>|spis='..twor_listy..'|funkcja='..funkcja..'|klasa=spis_treści}}';
local rozwiniety_wikikod=frame:preprocess(wikikod_menu);
return rozwiniety_wikikod;
else
return (twor_listy and ('\n=Spis treści=\n<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..'" style="margin-left:10px">'..twor_listy..'</div>') or "");
end;
end;
function p.AnalizaSzablonuStronicowegoParsera(self,uzyskano_w_wyniku_parsowania_wywolanie_szablonu,kod,obiekt,nazwa_modolu,__Funkcja, __Funkcja2)
if(obiekt~="TEMPLATE")then return;end;
uzyskano_w_wyniku_parsowania_wywolanie_szablonu=mw.ustring.gsub(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,"\n+","");
local tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modolu];
--mw.logObject(tablica_obiektow_strony,nazwa_modolu);
local function GlownaFunkcja(wywolanie,oznaczenie_szablonu)
local techniczne_modul=require("Module:Techniczne");
local tabela_parametrow_szablonu=techniczne_modul["ParsujWywołanieSzablonu"](wywolanie);
if(not tabela_parametrow_szablonu)then return nil;end;
__Funkcja(tabela_parametrow_szablonu,wywolanie);
if(__Funkcja2)then
__Funkcja2(oznaczenie_szablonu,wywolanie,tabela_parametrow_szablonu,uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
end;
end;
GlownaFunkcja(uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
end;
function p.AnalizujLinkSzablonyOrazLinki(wyzyskane_wywolanie_szablonu_spis_tresci,nazwa_przestrzeni,nazwa_ksiazki,__FUNKCJA)
local pozycja_artykulu=nil;local nazwa=nil;
local pozycja_artykulu,nazwa=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)|([^%[%]{}]+)%]%]$")
if(not((pozycja_artykulu)and(nazwa)))then
pozycja_artykulu=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)%]%]$");
end;
local function Artykul(strona)
local nazwy_modul=require("Module:Nazwy");
local html_modul=require("Module:Html");
local parametry=html_modul["ParametryStronyAdresu"](strona);
local naglowek=html_modul["NagłówekStronyAdresu"](strona);
local nazwa_przestrzeni_strony=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_ksiazki_strony=nazwy_modul["NAZWAKSIĄŻKI"](strona);
local nazwa_artykulu_strony=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona);
if((nazwa_przestrzeni_strony==nazwa_przestrzeni)and(nazwa_ksiazki_strony==nazwa_ksiazki))then
return nazwa_artykulu_strony..(parametry and ("?"..parametry) or "")..(naglowek and ("#"..naglowek) or "");
else
return;
end;
end;
local id=nil;
local parametry;
local czy_pozycja_artykulu=nil;
if(not pozycja_artykulu)then
local link_szablon=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"({{[^{}]+}})");
if(link_szablon)then
local techniczne_modul=require("Module:Techniczne");
parametry=techniczne_modul["ParsujWywołanieSzablonu"](link_szablon);
local szablon=parametry[0];
if(szablon=="SpisTreści")then
pozycja_artykulu=parametry[1];
id=true;
elseif(szablon=="Sekcja referencyjna")then
local podstrona=parametry[3] or parametry["podstrona"];
local strona=parametry[1] or parametry["strona"];
if(not strona)then
local nazwy_modul=require("Module:Nazwy");
pozycja_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"]();
else
pozycja_artykulu=(((podstrona) and (podstrona~="")) and (podstrona..((not mw.ustring.match(strona,"^#")) and "/" or "")) or "")..strona;
end;
nazwa=parametry["nazwa"] or parametry[2];
else
if(szablon=="Link wewnętrzny")then
local strona=parametry["strona"];
nazwa=parametry["nazwa"];
pozycja_artykulu=Artykul(strona);
czy_pozycja_artykulu=strona;
elseif(szablon=="LinkOgólne")then
local strona=parametry[1];
nazwa=parametry[2];
local miano_przestrzeni_nazw=parametry["miano przestrzeni nazw"];
if(miano_przestrzeni_nazw)then
czy_pozycja_artykulu=((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw..":") or "")..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
else
pozycja_artykulu=Artykul(parametry[1])
czy_pozycja_artykulu=parametry[1];
end;
elseif(szablon=="LinkGłówna")then
pozycja_artykulu=Artykul(parametry[1])
czy_pozycja_artykulu=parametry[1];
nazwa=parametry[2];
elseif((szablon=="LinkWikijunior")or(szablon=="LinkWikijunior2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.Wikijunior..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((szablon=="LinkProjekt")or(szablon=="LinkProjekt2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.Wikibooks..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((szablon=="LinkUżytkownik")or(szablon=="LinkUżytkownik2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.User..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((__FUNKCJA)and(__FUNKCJA(parametry)))then
return nil,nil,false,parametry,true;
end;
end;
end;
else
local parametry_modul=require("Module:Parametry");
pozycja_artykulu=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=pozycja_artykulu,[2]="tak",});
local czy_pozycja_artykulu=mw.ustring.match(pozycja_artykulu,"^/(.-)/+$") or mw.ustring.match(pozycja_artykulu,"^/(.+)$");
if(czy_pozycja_artykulu)then
if(parametry_modul["CzyTakCiąg"](czy_pozycja_artykulu))then
pozycja_artykulu=czy_pozycja_artykulu;
else
pozycja_artykulu=nil;
end;
else
local czy_pozycja_artykulu=pozycja_artykulu;
pozycja_artykulu=Artykul(pozycja_artykulu);
if((not pozycja_artykulu)and(czy_pozycja_artykulu)and(not mw.ustring.match(czy_pozycja_artykulu,"[{}%[%]|]")))then
local kod_jezyka_koncowy="pl";
local kod_projektu_koncowy="b";
local linki_modul=require("Module:Linki");
local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=linki_modul.KodyNazwyStrony(czy_pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy,{});
return nil,{nazwa_strony_linku,nazwa,kod_jezyka_koncowy,kod_projektu_koncowy,},false,nil,false;
else
return {pozycja_artykulu,nazwa},nil,false,nil,false;
end;
end;
end;
if((not pozycja_artykulu)and(czy_pozycja_artykulu))then
local wiki_modul=require("Module:Wiki");
local kod_jezyka_koncowy,kod_projektu_koncowy=wiki_modul.KodyWiki(parametry["klucz projektu"],parametry["kod jezyka"],parametry["kod projektu"]);
local linki_modul=require("Module:Linki");
local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=linki_modul.KodyNazwyStrony(czy_pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy,{});
return nil,{nazwa_strony_linku,parametry[2],kod_jezyka_koncowy,kod_projektu_koncowy},false,nil,false;
end;
return {pozycja_artykulu,nazwa},nil,id,parametry,false;
end;
function p.NumerObiektu(frame, nazwa_obiektu)
local pf=frame:getParent();
local parametry_modul=require("Module:Parametry");
local uchwyt_obiektu=(frame.args["uchwyt"])and parametry_modul["Odstępy"](frame.args["uchwyt"]) or nil;
local nazwa_strony;
local html_modul=require("Module:Html");
local nazwy_modul=require("Module:Nazwy");
local ksiazkowe_modul=require("Module:Książkowe");
local techniczne_modul=require("Module:Techniczne");
local nazwa_przestrzeni;local nazwa_ksiazki;local nazwa_artykulu;
nazwa_artykulu=frame.args["nazwa artykułu"];
nazwa_ksiazki=frame.args["nazwa książki"];
local tabela_listy_danych_analizy_ksiazki=mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
if(not parametry_modul.CzyTak{[1]=tabela_listy_danych_analizy_ksiazki,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
local czy_aktualna_strona=nil;
if((not nazwa_artykulu)and(not nazwa_ksiazki))then
czy_aktualna_strona=1;
nazwa_strony="";
elseif((nazwa_artykulu)and(not nazwa_ksiazki))then
czy_aktualna_strona=2;
nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," ");
nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
else
nazwa_ksiazki=ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"](nazwa_ksiazki);
nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_ksiazki);
nazwa_ksiazki=ksiazkowe_modul["NazwaKsiążki"](nazwa_ksiazki);
nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," ");
nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
end;
local link = function(adres_linku,nazwa_linku,klasa,styl)
local czy_klasa=parametry_modul.CzyTak(klasa);
local czy_styl=parametry_modul.CzyTak(styl);
if(czy_klasa or czy_styl)then
spanramka=mw.html.create('span');
if(czy_klasa)then spanramka:attr("class",klasa);end;
if(czy_styl)then spanramka:attr('style',styl);end;
spanramka:wikitext(nazwa_linku);
local kod_html=spanramka:allDone();
return "[["..adres_linku.."|"..tostring(kod_html).."]]";
else
return "[["..adres_linku.."|"..nazwa_linku.."]]";
end;
end;
local wzor = function(uchwyt,numeracja,styl_main,styl_odstepu,pole_odstepu,styl_wzoru,klasa_wzoru,wzor,opis,opis2,klasa_opisu,styl_opisu,styl_opisu_2,wzor_opisu,wzor_opisu_2,styl_alternatywy_opisu,styl_alternatywy_opisu_2,pozycja_numeracji,klasa_numeracji,styl_numeracji,bez_automatu)
divramka=mw.html.create('div');
local parametry_modul=require("Module:Parametry");
local czy_pozycja_numeracji_prawa=parametry_modul.CzyTak(pozycja_numeracji);
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',"wzór_"..uchwyt);
else
if(numeracja)then
divramka:attr('id',"wzór_"..numeracja);
else
divramka:attr('id',"wzór_"..uchwyt);
end;
end;
end;
if(parametry_modul.CzyTak(styl_main))then
divramka:attr('style',styl_main);
end;
local uchwyt_fun=function()
if(parametry_modul.CzyTak(uchwyt))then
local divuchwytramka=mw.html.create('div');
divuchwytramka:attr('class',klasa_numeracji);
divuchwytramka:attr('style',styl_numeracji);
if(parametry_modul.CzyTak(bez_automatu))then
divuchwytramka:wikitext('(',uchwyt..")");
else
if(numeracja)then
divuchwytramka:wikitext('('..numeracja..")");
else
divuchwytramka:wikitext("(Niedopasowany uchwyt: "..uchwyt..")");
end;
end;
divramka:node(divuchwytramka);
end;
end;
local pole_odstepu_fun=function()
divramka:addClass("wzory");
local divramka2=mw.html.create('div');
divramka2:attr('style',styl_odstepu);
divramka2:wikitext(pole_odstepu);
divramka:node(divramka2);
end;
local opis_fun=function(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu)
if(parametry_modul.CzyTak(opis))then
local divramka5=mw.html.create('div')
divramka5:attr('class',klasa_opisu)
divramka5:attr('style',styl_opisu)
divramka5:wikitext(wzor_opisu)
divramka:node(divramka5)
else
local divramka5=mw.html.create('div');
divramka5:attr('style',styl_alternatywy_opisu);
divramka:node(divramka5)
end;
end;
if(not czy_pozycja_numeracji_prawa)then
uchwyt_fun();
else
pole_odstepu_fun();
end;
opis_fun(opis2,styl_opisu_2,wzor_opisu_2,styl_alternatywy_opisu_2);
local divramka4=mw.html.create('div');
divramka4:attr('class',klasa_wzoru);
divramka4:attr('style',styl_wzoru);
divramka4:wikitext(wzor);
divramka:node(divramka4);
opis_fun(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu);
if(czy_pozycja_numeracji_prawa)then
uchwyt_fun();
else
pole_odstepu_fun();
end;
return tostring(divramka:allDone());
end;
local rysunek=function(uchwyt,numeracja,opis, rysunek, pozycja,rozmiar,klasa,styl,bez_automatu)
local divramka=mw.html.create('div');
divramka:attr('class',klasa);
divramka:attr('style',styl);
local czy_uchwyt=parametry_modul.CzyTak(uchwyt);
if(czy_uchwyt)then
if(numeracja)then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',"rysunek_"..uchwyt);
else
divramka:attr('id',"rysunek_"..numeracja);
end;
else
divramka:attr('id',"rysunek_"..uchwyt);
end;
end;
local czy_opis=parametry_modul.CzyTak(opis);
local wywolanie_rysunku="[[File:"..((rysunek)and rysunek or "Przykładowy rysunek.svg").."|thumb|"..(pozycja or "right").."|"..(rozmiar or "200px")..((czy_uchwyt or czy_opis)and ("|"..((parametry_modul.CzyTak(uchwyt))and "(Rys. "..((numeracja)and (parametry_modul.CzyTak(bez_automatu) and uchwyt or numeracja) or "Niedopasowany uchwyt: "..uchwyt)..")" or "").." "..opis) or "").."]]";
divramka:wikitext(wywolanie_rysunku);
return tostring(divramka:allDone());
end;
local wypowiedzenie = function(uchwyt,przedrostek,numeracja,klasa,styl,przedrostek2,rodzaj,kogo,czego,jakie,styl_naglowka,styl_tekstu,tekst,bez_automatu)
local divramka=mw.html.create('div');
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',przedrostek.."_"..uchwyt);
else
divramka:attr('id',przedrostek.."_"..(numeracja or uchwyt));
end;
end;
divramka:attr('class',klasa);
divramka:attr('style',styl);
local wikitext="";
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
wikitext="("..przedrostek2.." "..uchwyt..")";
else
if(numeracja)then
wikitext="("..przedrostek2.." "..numeracja..")";
else
wikitext="("..przedrostek2.." Niedopawany uchwyt: "..uchwyt..")";
end;
end;
end;
if(parametry_modul.CzyTak(styl_naglowka))then
local spanramka=mw.html.create('span');
spanramka:attr('style',styl_naglowka);
spanramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
divramka:node(spanramka);
else
divramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
end;
divramka:wikitext('<BR>');
if(parametry_modul.CzyTak(styl_tekstu))then
local spanramka=mw.html.create('span');
spanramka:attr('style',styl_tekstu);
spanramka:wikitext(tekst);
divramka:node(spanramka);
else
divramka:wikitext(tekst);
end;
return tostring(divramka:allDone());
end;
local punkty = function(uchwyt,numeracja,przedrostek_id,klasa,styl,prefiks,bez_automatu)
local spanramka=mw.html.create('sup');
spanramka:attr('style',klasa);
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
spanramka:attr('id',przedrostek_id.."_"..uchwyt);
else
if(parametry_modul.CzyTak(numeracja))then
spanramka:attr('id',przedrostek_id.."_"..numeracja);
else
spanramka:attr('id',przedrostek_id.."_"..uchwyt);
end;
end;
end;
spanramka:attr('style',styl);
local smallramka=mw.html.create('small');
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
smallramka:wikitext(prefiks..": "..uchwyt);
else
if(parametry_modul.CzyTak(numeracja))then
smallramka:wikitext('['..prefiks..": "..numeracja..']');
else
smallramka:wikitext('['..prefiks..": Niedopsowany uchwyt: "..uchwyt..']');
end;
end;
else
smallramka:wikitext('['..prefiks..": Niedopasowany uchwyt: brak uchwytu]");
end;
spanramka:node(smallramka);
return tostring(spanramka:allDone());
end;
local nazwa_strony_fun=function(nazwa_strony)
if((tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni)
and(tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki==nazwa_ksiazki)
and (tabela_listy_danych_analizy_ksiazki.nazwa_artykulu==nazwa_artykulu))then
return "";
end;
return nazwa_strony;
end;
if(parametry_modul.CzyTak(frame.args["bez automatu"]))then
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
if(uchwyt_obiektu)then
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"]..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
else
return "("..link(nazwa_strony.."#"..frame.args["id"].."_".."Nieznany uchwyt",frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
end;
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,uchwyt_obiektu,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,uchwyt_obiektu,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],uchwyt_obiektu,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,uchwyt_obiektu,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return uchwyt_obiektu;
end;
else
return uchwyt_obiektu;
end;
end;
local tabela_listy_uchwytow_i_numeracji_na_stronie;
if(czy_aktualna_strona==nil)then
local dane_analizy_artykulu=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu;
if(dane_analizy_artykulu)then
local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni=dane_analizy_artykulu[nazwa_przestrzeni];
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni)then
local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
if(lista_artykolow)then
local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
if(tabela_listy_analizy_na_stronie)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
end;
end;
end;
end;
end;
elseif(czy_aktualna_strona==1)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_danych_analizy_ksiazki.tablica_aktualnego_artykolu;
if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_na_stronie,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
elseif(czy_aktualna_strona==2)then
tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_ksiazki;
if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
if(lista_artykolow)then
local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
if(tabela_listy_analizy_na_stronie)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
end;
end;
end;
end;
if(tabela_listy_uchwytow_i_numeracji_na_stronie)then
local spis_uchwytow=tabela_listy_uchwytow_i_numeracji_na_stronie[nazwa_obiektu];
if(spis_uchwytow)then
if((uchwyt_obiektu)and(uchwyt_obiektu~=""))then
for _, dany_artykul in ipairs(spis_uchwytow)do
if(dany_artykul[1]==uchwyt_obiektu)then
if(nazwa_obiektu~="Śródtytuł")then
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
if(not dany_artykul[2])then
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
end;
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..dany_artykul[2],frame.args["przedrostek"]..dany_artykul[2],frame.args["klasa"],frame.args["styl"])..")";
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,dany_artykul[2],frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,dany_artykul[2],frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],dany_artykul[2],frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,dany_artykul[2],frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
end;
else
return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
end;
else
if(dany_artykul[2])then
local tytul_szablonu=frame.args["nazwa szablonu"] or techniczne_modul.NazwaSzablonu(frame:getParent():getTitle());
if(tytul_szablonu=="LinkŚródtytuł")then
return link(dany_artykul[2][1],dany_artykul[2][2],frame.args["klasa"],frame.args["styl"])
elseif(tytul_szablonu=="LinkŚródtytułTutaj")then
return link(dany_artykul[2][1],"tutaj",frame.args["klasa"],frame.args["styl"])
end;
end;
end;
end;
end;
end;
end;
end;
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,nil,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,nil,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],nil,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,nil,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
else
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
end;
return p;
74xjy921ipus4aif076z4leoh4xwh9l
439020
439019
2022-08-29T07:31:22Z
Persino
2851
Scribunto
text/plain
local p={};
--zamykanie
local znak_127=mw.ustring.char(127);
function p.OgolnyWzor(numer_szablonu,co)
if(not numer_szablonu)then
local wzor=znak_127.."'\"`UNIQ%-%-"..(co or "TEMPLATE").."%-(%d+)%-QINU`\"'"..znak_127;
return wzor;
end;
local wzor=znak_127.."'\"`UNIQ%-%-"..(co or "TEMPLATE").."%-"..numer_szablonu.."%-QINU`\"'"..znak_127;
return wzor;
end;
function p.KodujStroneObiektowa(self,tekst_artykulu,nazwa_modolu,tablica_obiektow_strony_dany_modol)
local tab_self;
local function ZamieniajSzablonyStart(self,tablica_obiektow_strony_dany_modol)
tab_self.numer_szablonu={};
tab_self.numer_szablonu["TEMPLATE"]=1;
tab_self.numer_szablonu["LINKW"]=1;
tab_self.numer_szablonu["LINKZ"]=1;
tab_self.numer_szablonu["VAR"]=1;
tab_self.numer_szablonu["NOWIKI"]=1;
tab_self.numer_szablonu["MATH"]=1;
tab_self.numer_szablonu["PRE"]=1;
end;
local function ZamieniajSzablony(self,szablon,tablica_obiektow_strony,co,czy_nie_self)
local kod=znak_127.."'\"`UNIQ--"..(co or "TEMPLATE").."-"..tab_self.numer_szablonu[co or "TEMPLATE"].."-QINU`\"'"..znak_127;
tablica_obiektow_strony[co or "TEMPLATE"][tab_self.numer_szablonu[co or "TEMPLATE"]]=szablon;
tab_self.numer_szablonu[co or "TEMPLATE"]=tab_self.numer_szablonu[co or "TEMPLATE"]+1;
return kod;
end;
if(not tablica_obiektow_strony_dany_modol)then
if(not self.tablica_obiektow_strony)then self.tablica_obiektow_strony={};end;
if(not self.tablica_obiektow_strony[nazwa_modolu])then self.tablica_obiektow_strony[nazwa_modolu]={};end;
---
tablica_obiektow_strony_dany_modol=self.tablica_obiektow_strony[nazwa_modolu];
tab_self=self;
ZamieniajSzablonyStart(self,nil);
else
tab_self=tablica_obiektow_strony_dany_modol;
ZamieniajSzablonyStart(self,tablica_obiektow_strony_dany_modol);
end;
tablica_obiektow_strony_dany_modol["TEMPLATE"]={};
tablica_obiektow_strony_dany_modol["LINKW"]={};
tablica_obiektow_strony_dany_modol["LINKZ"]={};
tablica_obiektow_strony_dany_modol["VAR"]={};
tablica_obiektow_strony_dany_modol["NOWIKI"]={};
tablica_obiektow_strony_dany_modol["MATH"]={};
tablica_obiektow_strony_dany_modol["PRE"]={};
---
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Pp][Rr][Ee]%s*>(.-)</%s*[Pp][Rr][Ee]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"PRE");end);
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Nn][Oo][Ww][Ii][Kk][Ii]%s*>(.-)</%s*[Nn][Oo][Ww][Ii][Kk][Ii]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"NOWIKI");end);
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Mm][Aa][Tt][Hh]%s*>(.-)</%s*[Mm][Aa][Tt][Hh]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"MATH");end);
local ile_var=0;local ile_linkw=0;local ile_linkz=0;local ile_template=0;
repeat
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"(%[%[[^%[%]]+%]%])",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"LINKW");end);
tekst_artykulu,ile_linkz=mw.ustring.gsub(tekst_artykulu,"(%[[^%[%]]+%])",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"LINKZ");end);
repeat
tekst_artykulu,ile_var=mw.ustring.gsub(tekst_artykulu,"({{{[^{}]-}}})",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"VAR");end);
until (ile_var==0);
tekst_artykulu,ile_template=mw.ustring.gsub(tekst_artykulu,"({{[^{}]-}})",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"TEMPLATE");end);
until ((ile_var==0)and(ile_linkw==0)and(ile_linkz==0)and(ile_template==0));
return tekst_artykulu;
end;
function p.IteratorSzablonu(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony)
if(not tablica_obiektow_strony)then tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modolu];end;
local iter=mw.ustring.gmatch(tekst_rozwiniety_calego_artykulu,p.OgolnyWzor(nil,"(%a+)"));
local tak=nil;
local szablon=nil;
local iter2=nil;
local function Iterator()
local function IterMain()
local obiekt,kod=iter();
if((not obiekt)or(not kod))then return nil;end;
kod=tonumber(kod);
szablon=tablica_obiektow_strony[obiekt][kod];
tak=true;
iter2=p.IteratorSzablonu(self,szablon,nil,tablica_obiektow_strony);
return szablon,kod,obiekt;
end;
if(not tak)then
local szablon,kod,obiekt=IterMain();
return szablon,kod,obiekt;
else
local szablon,kod,obiekt=iter2();
if((not szablon)or(not kod)or(not obiekt))then
tak=nil;
local szablon,kod,obiekt=IterMain();
return szablon,kod,obiekt;
else
return szablon,kod,obiekt;
end;
end;
end;
return Iterator;
end;
function p.SkladajSzablonoweWywolanie(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony,__funkcja)
local techniczne_modul=require("Module:Techniczne");
local iterator=p.IteratorSzablonu(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony);
for szablon,kod,obiekt in iterator do
szablon=((__funkcja)and __funkcja(szablon,kod,obiekt) or szablon);
szablon=techniczne_modul["TekstBezOdwołańDoParametrówWeWzorze"](szablon);
tekst_rozwiniety_calego_artykulu=mw.ustring.gsub(tekst_rozwiniety_calego_artykulu,p.OgolnyWzor(kod,obiekt),szablon);
end;
return tekst_rozwiniety_calego_artykulu;
end;
--koniec zamykanie
function p.LiczonyHNumer()
local ulozenie=nil;
local ostatnie=0;
local h_numer_zapamietane=nil;
return function(h_numer,h_numer_nowe,jakie)
if(not h_numer_nowe)then
if(not jakie)then
if(h_numer==0)then
return h_numer_zapamietane;
elseif(h_numer<0)then
h_numer=math.abs(h_numer);
end;
else
if(h_numer==0)then
h_numer_zapamietane=0;
return 0;
end;
end;
if((ulozenie==nil)or(ulozenie>=h_numer))then
ulozenie=h_numer-1;
elseif(ostatnie+1<h_numer-ulozenie)then
ulozenie=h_numer-ostatnie-1;
end;
ostatnie=h_numer-ulozenie;
h_numer=h_numer-ulozenie;
h_numer_zapamietane=h_numer;
return h_numer;
else
ulozenie=h_numer-h_numer_nowe;
ostatnie=h_numer-ulozenie;
return h_numer_nowe;
end;
end;
end;
function p.PoziomAdresu(adres)
local lens=#adres;
local i=1;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
end;
end;
return i;
end;
function p.NazwaNadStrony(adres,numer)
if((numer)and(numer==1))then return nil;end;
if((not numer)and(numer<1)or(numer~=math.floor(numer)))then return adres;end;
local lens=#adres;
local i=1;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
end;
if(i==numer)then
return mw.ustring.sub(adres,1,p-1);
end;
end;
return adres;
end;
function p.SubNazwaNadStrony(adres,numer,krok)
if((not numer)or(numer<1)or(numer~=math.floor(numer)))then return adres;end;
krok=krok or 1;
if((krok<1)or(krok~=math.floor(krok)))then return adres;end;
local lens=#adres;
local i=1;
local a=nil;local b=nil;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
if(i==numer)then
if(not a)then a=p+1;end;
end;
if(i==numer+krok)then
if(not b)then b=p-1;break;end;
end;
end;
end;
if(not a)then a=1;end;
if(not b)then b=lens;end;
return mw.ustring.sub(adres,a,b);
end;
function p.ParametryPudelkaKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
local nazwa_przestrzeni=self.args["nazwa przestrzeni nazw"];
local nazwa_jednostki=self.args["nazwa jednostki"];
if(((nazwa_przestrzeni)and(nazwa_jednostki))or((nazwa_przestrzeni)and(not nazwa_jednostki))or((not nazwa_przestrzeni)and(nazwa_jednostki)))then
if(nazwa_jednostki)then
local html_modul=require("Module:Html");
self.naglowek=html_modul["NagłówekStronyAdresu"](nazwa_jednostki,true);
self.parametry=html_modul["ParametryStronyAdresu"](nazwa_jednostki);
end;
local pudelko_modul=require("Module:Pudełko");
local nazwa_jednostki=pudelko_modul["Pełna nazwa jednostki 2"](frame);
local nazwy_modul=require("Module:Nazwy");
self.nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki);
self.nazwa_ksiazki=nazwy_modul["NAZWAKSIĄŻKI"](nazwa_jednostki);
self.nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](nazwa_jednostki);
else
local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
self.nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
self.nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
self.nazwa_artykulu=tabela_listy_danych_analizy_ksiazki.nazwa_artykulu;
end;
end;
function p.TabelaListyArtykulowKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
local nazwa_przestrzeni;local nazwa_ksiazki;
if(tabela_listy_danych_analizy_ksiazki.zastepczy)then
nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_przestrzeni;
nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_ksiazki;
else
nazwa_przestrzeni=self.nazwa_przestrzeni;
nazwa_ksiazki=self.nazwa_ksiazki;
end;
local lista_artykulow_w_ksiazkach_w_danej_przestrzeni=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu[nazwa_przestrzeni];
if(not lista_artykulow_w_ksiazkach_w_danej_przestrzeni)then return nil;end;
local tab_lista_artykulow_w_ksiazce=lista_artykulow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
return tab_lista_artykulow_w_ksiazce.spis;
end;
function p.AnalizujArgumentySzablonu(self,frame)
local parametry_modul=require("Module:Parametry");
self.args=parametry_modul.PobierzArgsParametry(frame,true);
end;
function p.Args(self)
return self.args;
end;
function p.PelnaNazwaKsiazki(self,frame)
return ((self.nazwa_przestrzeni~="")and(self.nazwa_przestrzeni..":") or "")..self.nazwa_ksiazki
end;
function p.NazwaArtykuluKsiazki(self,frame)
return self.nazwa_artykulu..(self.parametry and ("?"..self.parametry) or "")..(self.naglowek and ("#"..self.naglowek) or "");
end;
function p.ObliczeniaInformacje(self,frame)
p:AnalizujArgumentySzablonu(frame);
p:ParametryPudelkaKsiazki(frame);
local tab_lista_artykulow_w_ksiazce=p:TabelaListyArtykulowKsiazki(frame);
if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.CzyTak(self.args["nagłówek"]);
local tab_artykul_bez_naglowka=(not naglowek) and {} or nil;
self.tab_artykul={};
local html_modul=require("Module:Html");
for _,tab_lista in ipairs(tab_lista_artykulow_w_ksiazce)do
if(tab_lista[2])then
for _,artykul_w_bazie in ipairs(tab_lista[2])do
local artykul=(not naglowek) and html_modul["NazwaStronyAdresu"](artykul_w_bazie[1][1] or artykul_w_bazie[1]) or (artykul_w_bazie[1][1] or artykul_w_bazie[1]);
if(naglowek or not tab_artykul_bez_naglowka[artykul])then
if(not naglowek)then
tab_artykul_bez_naglowka[artykul]=true;
end;
table.insert(self.tab_artykul, parametry_modul.TypeTable(artykul_w_bazie[1]) and {artykul,artykul_w_bazie[1][2],} or artykul);
end;
end;
end;
end;
self.len_tab_artykul=#self.tab_artykul;
return true;
end;
function p.PomiedzyArtykul(self,frame)
self.numer=tonumber(frame.args[1]) or 1;
self.reszta=math.fmod(self.numer,self.len_tab_artykul-2)+1;
return self.tab_artykul[self.reszta+1];
end;
function p.LosowyArtykul(self,frame)
self.numer=tonumber(frame.args[1]) or 1;
self.reszta=math.fmod(self.numer,self.len_tab_artykul)+1;
return self.tab_artykul[self.reszta];
end;
function p.TOCSilnik(lista_elementow_spisu_tresci, atrybuty)
if(lista_elementow_spisu_tresci==nil)then return nil;end;
local twor_listy="";
local liczba_ulozenia_w_menu_spisu_tresci=lista_elementow_spisu_tresci[1][2];
local poziom=1;
local num={};
for licznik, element_w_tablicy in ipairs(lista_elementow_spisu_tresci) do
if(licznik==1)then
num[#num+1]=1;
twor_listy=(atrybuty and '<ul '..atrybuty..'>' or '<ul>')..'<li class=\"toclevel-1 tocsection-1\">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
else
if(element_w_tablicy[2]==liczba_ulozenia_w_menu_spisu_tresci)then
num[#num]=num[#num]+1;
twor_listy=twor_listy..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
elseif(element_w_tablicy[2]>liczba_ulozenia_w_menu_spisu_tresci)then
num[#num+1]=1;
poziom=poziom+1;
twor_listy=twor_listy..'<ul><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
elseif(element_w_tablicy[2]<liczba_ulozenia_w_menu_spisu_tresci)then
local num_length=#num;
for i=num_length,num_length-liczba_ulozenia_w_menu_spisu_tresci+element_w_tablicy[2]+1,-1 do
table.remove(num);
end;
num[#num]=num[#num]+1;
local roznica_poziomow=liczba_ulozenia_w_menu_spisu_tresci-element_w_tablicy[2];
poziom=poziom-roznica_poziomow;
twor_listy=twor_listy..mw.ustring.rep('</li></ul>',roznica_poziomow)..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'
.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
end;
end;
end;
twor_listy=twor_listy..mw.ustring.rep('</li></ul>',liczba_ulozenia_w_menu_spisu_tresci or 0);
return twor_listy;
end;
function p.TOC(frame,lista_elementow_spisu_tresci,czy_nie_aktualny,rozciagnij)
local twor_listy=p.TOCSilnik(lista_elementow_spisu_tresci);
local parametry_modul=require("Module:Parametry");
local frame=frame or mw.getCurrentFrame();
local args=frame.args;
local toc_czy_tocramka=parametry_modul.CzyTak(args["toc"]);
if(not toc_czy_tocramka)then
local czy_ukryte=twor_listy;
local funkcja=args["funkcja"] or "UkrytaWikitabelowaListaMenu";
local wysokosc=parametry_modul.CzyTak(args["wysokość"]) and args["wysokość"] or "700px";
local szerokosc=parametry_modul.CzyTak(args["szerokość"])and args["szerokość"] or "100%";
local spis_tresci=parametry_modul.CzyTak(args["spis treści"])and args["spis treści"] or "Spis treści";
local spis_artykulu=parametry_modul.CzyTak(args["spis artykułu"]);
local czy_bez_arginesu_dolnego=parametry_modul.CzyTak(args["bez marginesu dolnego"]);
local czy_z_marginesami_ramki=parametry_modul.CzyTak(args["z marginesami ramki"]);
local zawartosc_z_marginesami=parametry_modul.CzyTak(args["zawartość z marginesami"]);
twor_listy='<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..' mw-overflow-x mw-overflow-y mw-not-overflow-x" style="'..(zawartosc_z_marginesami and ("padding:"..args["zawartość z marginesami"])..";" or "")..'width:'..szerokosc..';max-height:'..wysokosc..';overflow:auto;padding-right:5px;box-sizing:border-box;">'..(czy_ukryte or "<ul></ul>").."</div>";
local wikikod_menu='{{Tabela nawigacyjna|styl='..((czy_z_marginesami_ramki) and ("margin:"..args["z marginesami ramki"])..";" or "")..((czy_bez_arginesu_dolnego) and 'margin-bottom:0;' or "")..(czy_ukryte and "" or "visibility:hidden")..';font-size:14px;background-color:white;line-height:1.2em;width:'..(rozciagnij and "100%" or "auto")..';box-sizing:border-box'..(spis_artykulu and ';border:#aaa 1px solid' or '')..'|tytuł=<div style="text-align:left;font-size:14px;background-color:white;line-height:1.2em;'..(spis_artykulu and ';border-bottom:#aaa 1px solid' or '')..';white-space:nowrap;min-width:130px;">'..spis_tresci..'</div>|spis='..twor_listy..'|funkcja='..funkcja..'|klasa=spis_treści}}';
local rozwiniety_wikikod=frame:preprocess(wikikod_menu);
return rozwiniety_wikikod;
else
return (twor_listy and ('\n=Spis treści=\n<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..'" style="margin-left:10px">'..twor_listy..'</div>') or "");
end;
end;
function p.AnalizaSzablonuStronicowegoParsera(self,uzyskano_w_wyniku_parsowania_wywolanie_szablonu,kod,obiekt,nazwa_modolu,__Funkcja, __Funkcja2)
if(obiekt~="TEMPLATE")then return;end;
uzyskano_w_wyniku_parsowania_wywolanie_szablonu=mw.ustring.gsub(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,"\n+","");
local tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modolu];
--mw.logObject(tablica_obiektow_strony,nazwa_modolu);
local function GlownaFunkcja(wywolanie,oznaczenie_szablonu)
local techniczne_modul=require("Module:Techniczne");
local tabela_parametrow_szablonu=techniczne_modul["ParsujWywołanieSzablonu"](wywolanie);
if(not tabela_parametrow_szablonu)then return nil;end;
__Funkcja(tabela_parametrow_szablonu,wywolanie);
if(__Funkcja2)then
__Funkcja2(oznaczenie_szablonu,wywolanie,tabela_parametrow_szablonu,uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
end;
end;
GlownaFunkcja(uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
end;
function p.AnalizujLinkSzablonyOrazLinki(wyzyskane_wywolanie_szablonu_spis_tresci,nazwa_przestrzeni,nazwa_ksiazki,__FUNKCJA)
local pozycja_artykulu=nil;local nazwa=nil;
local pozycja_artykulu,nazwa=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)|([^%[%]{}]+)%]%]$")
if(not((pozycja_artykulu)and(nazwa)))then
pozycja_artykulu=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)%]%]$");
end;
local function Artykul(strona)
local nazwy_modul=require("Module:Nazwy");
local html_modul=require("Module:Html");
local parametry=html_modul["ParametryStronyAdresu"](strona);
local naglowek=html_modul["NagłówekStronyAdresu"](strona);
local nazwa_przestrzeni_strony=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_ksiazki_strony=nazwy_modul["NAZWAKSIĄŻKI"](strona);
local nazwa_artykulu_strony=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona);
if((nazwa_przestrzeni_strony==nazwa_przestrzeni)and(nazwa_ksiazki_strony==nazwa_ksiazki))then
return nazwa_artykulu_strony..(parametry and ("?"..parametry) or "")..(naglowek and ("#"..naglowek) or "");
else
return;
end;
end;
local id=nil;
local parametry;
local czy_pozycja_artykulu=nil;
if(not pozycja_artykulu)then
local link_szablon=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"({{[^{}]+}})");
if(link_szablon)then
local techniczne_modul=require("Module:Techniczne");
parametry=techniczne_modul["ParsujWywołanieSzablonu"](link_szablon);
local szablon=parametry[0];
if(szablon=="SpisTreści")then
pozycja_artykulu=parametry[1];
id=true;
elseif(szablon=="Sekcja referencyjna")then
local podstrona=parametry[3] or parametry["podstrona"];
local strona=parametry[1] or parametry["strona"];
if(not strona)then
local nazwy_modul=require("Module:Nazwy");
pozycja_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"]();
else
pozycja_artykulu=(((podstrona) and (podstrona~="")) and (podstrona..((not mw.ustring.match(strona,"^#")) and "/" or "")) or "")..strona;
end;
nazwa=parametry["nazwa"] or parametry[2];
else
if(szablon=="Link wewnętrzny")then
local strona=parametry["strona"];
nazwa=parametry["nazwa"];
pozycja_artykulu=Artykul(strona);
czy_pozycja_artykulu=strona;
elseif(szablon=="LinkOgólne")then
local strona=parametry[1];
nazwa=parametry[2];
local miano_przestrzeni_nazw=parametry["miano przestrzeni nazw"];
if(miano_przestrzeni_nazw)then
czy_pozycja_artykulu=((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw..":") or "")..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
else
pozycja_artykulu=Artykul(parametry[1])
czy_pozycja_artykulu=parametry[1];
end;
elseif(szablon=="LinkGłówna")then
pozycja_artykulu=Artykul(parametry[1])
czy_pozycja_artykulu=parametry[1];
nazwa=parametry[2];
elseif((szablon=="LinkWikijunior")or(szablon=="LinkWikijunior2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.Wikijunior..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((szablon=="LinkProjekt")or(szablon=="LinkProjekt2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.Wikibooks..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((szablon=="LinkUżytkownik")or(szablon=="LinkUżytkownik2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.User..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((__FUNKCJA)and(__FUNKCJA(parametry)))then
return nil,nil,false,parametry,true;
end;
end;
end;
else
local parametry_modul=require("Module:Parametry");
pozycja_artykulu=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=pozycja_artykulu,[2]="tak",});
local czy_pozycja_artykulu=mw.ustring.match(pozycja_artykulu,"^/(.-)/+$") or mw.ustring.match(pozycja_artykulu,"^/(.+)$");
if(czy_pozycja_artykulu)then
if(parametry_modul["CzyTakCiąg"](czy_pozycja_artykulu))then
pozycja_artykulu=czy_pozycja_artykulu;
else
pozycja_artykulu=nil;
end;
else
local czy_pozycja_artykulu=pozycja_artykulu;
pozycja_artykulu=Artykul(pozycja_artykulu);
if((not pozycja_artykulu)and(czy_pozycja_artykulu)and(not mw.ustring.match(czy_pozycja_artykulu,"[{}%[%]|]")))then
local kod_jezyka_koncowy="pl";
local kod_projektu_koncowy="b";
local linki_modul=require("Module:Linki");
local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=linki_modul.KodyNazwyStrony(czy_pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy,{});
return nil,{nazwa_strony_linku,nazwa,kod_jezyka_koncowy,kod_projektu_koncowy,},false,nil,false;
else
return {pozycja_artykulu,nazwa},nil,false,nil,false;
end;
end;
end;
if((not pozycja_artykulu)and(czy_pozycja_artykulu))then
local wiki_modul=require("Module:Wiki");
local kod_jezyka_koncowy,kod_projektu_koncowy=wiki_modul.KodyWiki(parametry["klucz projektu"],parametry["kod jezyka"],parametry["kod projektu"]);
local linki_modul=require("Module:Linki");
local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=linki_modul.KodyNazwyStrony(czy_pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy,{});
return nil,{nazwa_strony_linku,parametry[2],kod_jezyka_koncowy,kod_projektu_koncowy},false,nil,false;
end;
return {pozycja_artykulu,nazwa},nil,id,parametry,false;
end;
function p.NumerObiektu(frame, nazwa_obiektu)
local pf=frame:getParent();
local parametry_modul=require("Module:Parametry");
local uchwyt_obiektu=(frame.args["uchwyt"])and parametry_modul["Odstępy"](frame.args["uchwyt"]) or nil;
local nazwa_strony;
local html_modul=require("Module:Html");
local nazwy_modul=require("Module:Nazwy");
local ksiazkowe_modul=require("Module:Książkowe");
local techniczne_modul=require("Module:Techniczne");
local nazwa_przestrzeni;local nazwa_ksiazki;local nazwa_artykulu;
nazwa_artykulu=frame.args["nazwa artykułu"];
nazwa_ksiazki=frame.args["nazwa książki"];
local tabela_listy_danych_analizy_ksiazki=mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
if(not parametry_modul.CzyTak{[1]=tabela_listy_danych_analizy_ksiazki,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
local czy_aktualna_strona=nil;
if((not nazwa_artykulu)and(not nazwa_ksiazki))then
czy_aktualna_strona=1;
nazwa_strony="";
elseif((nazwa_artykulu)and(not nazwa_ksiazki))then
czy_aktualna_strona=2;
nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," ");
nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
else
nazwa_ksiazki=ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"](nazwa_ksiazki);
nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_ksiazki);
nazwa_ksiazki=ksiazkowe_modul["NazwaKsiążki"](nazwa_ksiazki);
nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," ");
nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
end;
local link = function(adres_linku,nazwa_linku,klasa,styl)
local czy_klasa=parametry_modul.CzyTak(klasa);
local czy_styl=parametry_modul.CzyTak(styl);
if(czy_klasa or czy_styl)then
spanramka=mw.html.create('span');
if(czy_klasa)then spanramka:attr("class",klasa);end;
if(czy_styl)then spanramka:attr('style',styl);end;
spanramka:wikitext(nazwa_linku);
local kod_html=spanramka:allDone();
return "[["..adres_linku.."|"..tostring(kod_html).."]]";
else
return "[["..adres_linku.."|"..nazwa_linku.."]]";
end;
end;
local wzor = function(uchwyt,numeracja,styl_main,styl_odstepu,pole_odstepu,styl_wzoru,klasa_wzoru,wzor,opis,opis2,klasa_opisu,styl_opisu,styl_opisu_2,wzor_opisu,wzor_opisu_2,styl_alternatywy_opisu,styl_alternatywy_opisu_2,pozycja_numeracji,klasa_numeracji,styl_numeracji,bez_automatu)
divramka=mw.html.create('div');
local parametry_modul=require("Module:Parametry");
local czy_pozycja_numeracji_prawa=parametry_modul.CzyTak(pozycja_numeracji);
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',"wzór_"..uchwyt);
else
if(numeracja)then
divramka:attr('id',"wzór_"..numeracja);
else
divramka:attr('id',"wzór_"..uchwyt);
end;
end;
end;
if(parametry_modul.CzyTak(styl_main))then
divramka:attr('style',styl_main);
end;
local uchwyt_fun=function()
if(parametry_modul.CzyTak(uchwyt))then
local divuchwytramka=mw.html.create('div');
divuchwytramka:attr('class',klasa_numeracji);
divuchwytramka:attr('style',styl_numeracji);
if(parametry_modul.CzyTak(bez_automatu))then
divuchwytramka:wikitext('(',uchwyt..")");
else
if(numeracja)then
divuchwytramka:wikitext('('..numeracja..")");
else
divuchwytramka:wikitext("(Niedopasowany uchwyt: "..uchwyt..")");
end;
end;
divramka:node(divuchwytramka);
end;
end;
local pole_odstepu_fun=function()
divramka:addClass("wzory");
local divramka2=mw.html.create('div');
divramka2:attr('style',styl_odstepu);
divramka2:wikitext(pole_odstepu);
divramka:node(divramka2);
end;
local opis_fun=function(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu)
if(parametry_modul.CzyTak(opis))then
local divramka5=mw.html.create('div')
divramka5:attr('class',klasa_opisu)
divramka5:attr('style',styl_opisu)
divramka5:wikitext(wzor_opisu)
divramka:node(divramka5)
else
local divramka5=mw.html.create('div');
divramka5:attr('style',styl_alternatywy_opisu);
divramka:node(divramka5)
end;
end;
if(not czy_pozycja_numeracji_prawa)then
uchwyt_fun();
else
pole_odstepu_fun();
end;
opis_fun(opis2,styl_opisu_2,wzor_opisu_2,styl_alternatywy_opisu_2);
local divramka4=mw.html.create('div');
divramka4:attr('class',klasa_wzoru);
divramka4:attr('style',styl_wzoru);
divramka4:wikitext(wzor);
divramka:node(divramka4);
opis_fun(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu);
if(czy_pozycja_numeracji_prawa)then
uchwyt_fun();
else
pole_odstepu_fun();
end;
return tostring(divramka:allDone());
end;
local rysunek=function(uchwyt,numeracja,opis, rysunek, pozycja,rozmiar,klasa,styl,bez_automatu)
local divramka=mw.html.create('div');
divramka:attr('class',klasa);
divramka:attr('style',styl);
local czy_uchwyt=parametry_modul.CzyTak(uchwyt);
if(czy_uchwyt)then
if(numeracja)then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',"rysunek_"..uchwyt);
else
divramka:attr('id',"rysunek_"..numeracja);
end;
else
divramka:attr('id',"rysunek_"..uchwyt);
end;
end;
local czy_opis=parametry_modul.CzyTak(opis);
local wywolanie_rysunku="[[File:"..((rysunek)and rysunek or "Przykładowy rysunek.svg").."|thumb|"..(pozycja or "right").."|"..(rozmiar or "200px")..((czy_uchwyt or czy_opis)and ("|"..((parametry_modul.CzyTak(uchwyt))and "(Rys. "..((numeracja)and (parametry_modul.CzyTak(bez_automatu) and uchwyt or numeracja) or "Niedopasowany uchwyt: "..uchwyt)..")" or "").." "..opis) or "").."]]";
divramka:wikitext(wywolanie_rysunku);
return tostring(divramka:allDone());
end;
local wypowiedzenie = function(uchwyt,przedrostek,numeracja,klasa,styl,przedrostek2,rodzaj,kogo,czego,jakie,styl_naglowka,styl_tekstu,tekst,bez_automatu)
local divramka=mw.html.create('div');
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',przedrostek.."_"..uchwyt);
else
divramka:attr('id',przedrostek.."_"..(numeracja or uchwyt));
end;
end;
divramka:attr('class',klasa);
divramka:attr('style',styl);
local wikitext="";
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
wikitext="("..przedrostek2.." "..uchwyt..")";
else
if(numeracja)then
wikitext="("..przedrostek2.." "..numeracja..")";
else
wikitext="("..przedrostek2.." Niedopawany uchwyt: "..uchwyt..")";
end;
end;
end;
if(parametry_modul.CzyTak(styl_naglowka))then
local spanramka=mw.html.create('span');
spanramka:attr('style',styl_naglowka);
spanramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
divramka:node(spanramka);
else
divramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
end;
divramka:wikitext('<BR>');
if(parametry_modul.CzyTak(styl_tekstu))then
local spanramka=mw.html.create('span');
spanramka:attr('style',styl_tekstu);
spanramka:wikitext(tekst);
divramka:node(spanramka);
else
divramka:wikitext(tekst);
end;
return tostring(divramka:allDone());
end;
local punkty = function(uchwyt,numeracja,przedrostek_id,klasa,styl,prefiks,bez_automatu)
local spanramka=mw.html.create('sup');
spanramka:attr('style',klasa);
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
spanramka:attr('id',przedrostek_id.."_"..uchwyt);
else
if(parametry_modul.CzyTak(numeracja))then
spanramka:attr('id',przedrostek_id.."_"..numeracja);
else
spanramka:attr('id',przedrostek_id.."_"..uchwyt);
end;
end;
end;
spanramka:attr('style',styl);
local smallramka=mw.html.create('small');
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
smallramka:wikitext(prefiks..": "..uchwyt);
else
if(parametry_modul.CzyTak(numeracja))then
smallramka:wikitext('['..prefiks..": "..numeracja..']');
else
smallramka:wikitext('['..prefiks..": Niedopsowany uchwyt: "..uchwyt..']');
end;
end;
else
smallramka:wikitext('['..prefiks..": Niedopasowany uchwyt: brak uchwytu]");
end;
spanramka:node(smallramka);
return tostring(spanramka:allDone());
end;
local nazwa_strony_fun=function(nazwa_strony)
if((tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni)
and(tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki==nazwa_ksiazki)
and (tabela_listy_danych_analizy_ksiazki.nazwa_artykulu==nazwa_artykulu))then
return "";
end;
return nazwa_strony;
end;
if(parametry_modul.CzyTak(frame.args["bez automatu"]))then
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
if(uchwyt_obiektu)then
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"]..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
else
return "("..link(nazwa_strony.."#"..frame.args["id"].."_".."Nieznany uchwyt",frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
end;
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,uchwyt_obiektu,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,uchwyt_obiektu,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],uchwyt_obiektu,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,uchwyt_obiektu,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return uchwyt_obiektu;
end;
else
return uchwyt_obiektu;
end;
end;
local tabela_listy_uchwytow_i_numeracji_na_stronie;
if(czy_aktualna_strona==nil)then
local dane_analizy_artykulu=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu;
if(dane_analizy_artykulu)then
local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni=dane_analizy_artykulu[nazwa_przestrzeni];
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni)then
local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
if(lista_artykolow)then
local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
if(tabela_listy_analizy_na_stronie)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
end;
end;
end;
end;
end;
elseif(czy_aktualna_strona==1)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_danych_analizy_ksiazki.tablica_aktualnego_artykolu;
if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_na_stronie,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
elseif(czy_aktualna_strona==2)then
tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_ksiazki;
if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
if(lista_artykolow)then
local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
if(tabela_listy_analizy_na_stronie)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
end;
end;
end;
end;
if(tabela_listy_uchwytow_i_numeracji_na_stronie)then
local spis_uchwytow=tabela_listy_uchwytow_i_numeracji_na_stronie[nazwa_obiektu];
if(spis_uchwytow)then
if((uchwyt_obiektu)and(uchwyt_obiektu~=""))then
for _, dany_artykul in ipairs(spis_uchwytow)do
if(dany_artykul[1]==uchwyt_obiektu)then
if(nazwa_obiektu~="Śródtytuł")then
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
if(not dany_artykul[2])then
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
end;
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..dany_artykul[2],frame.args["przedrostek"]..dany_artykul[2],frame.args["klasa"],frame.args["styl"])..")";
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,dany_artykul[2],frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,dany_artykul[2],frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],dany_artykul[2],frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,dany_artykul[2],frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
end;
else
return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
end;
else
if(dany_artykul[2])then
local tytul_szablonu=frame.args["nazwa szablonu"] or techniczne_modul.NazwaSzablonu(frame:getParent():getTitle());
if(tytul_szablonu=="LinkŚródtytuł")then
return link(dany_artykul[2][1],dany_artykul[2][2],frame.args["klasa"],frame.args["styl"])
elseif(tytul_szablonu=="LinkŚródtytułTutaj")then
return link(dany_artykul[2][1],"tutaj",frame.args["klasa"],frame.args["styl"])
end;
end;
end;
end;
end;
end;
end;
end;
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,nil,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,nil,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],nil,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,nil,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
else
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
end;
return p;
4n6asch8wo2yitkdjh79bvndqotklca
439035
439020
2022-08-29T10:09:51Z
Persino
2851
Scribunto
text/plain
local p={};
--zamykanie
local znak_127=mw.ustring.char(127);
function p.OgolnyWzor(numer_szablonu,co)
if(not numer_szablonu)then
local wzor=znak_127.."'\"`UNIQ%-%-"..(co or "(%a+)").."%-(%d+)%-QINU`\"'"..znak_127;
return wzor;
end;
local wzor=znak_127.."'\"`UNIQ%-%-"..(co or "(%a+)").."%-"..numer_szablonu.."%-QINU`\"'"..znak_127;
return wzor;
end;
function p.KodujStroneObiektowa(self,tekst_artykulu,nazwa_modolu,tablica_obiektow_strony_dany_modol)
local tab_self;
local function ZamieniajSzablonyStart(self,tablica_obiektow_strony_dany_modol)
tab_self.numer_szablonu={};
tab_self.numer_szablonu["TEMPLATE"]=1;
tab_self.numer_szablonu["LINKW"]=1;
tab_self.numer_szablonu["LINKZ"]=1;
tab_self.numer_szablonu["VAR"]=1;
tab_self.numer_szablonu["NOWIKI"]=1;
tab_self.numer_szablonu["MATH"]=1;
tab_self.numer_szablonu["PRE"]=1;
end;
local function ZamieniajSzablony(self,szablon,tablica_obiektow_strony,co,czy_nie_self)
local kod=znak_127.."'\"`UNIQ--"..(co or "TEMPLATE").."-"..tab_self.numer_szablonu[co or "TEMPLATE"].."-QINU`\"'"..znak_127;
tablica_obiektow_strony[co or "TEMPLATE"][tab_self.numer_szablonu[co or "TEMPLATE"]]=szablon;
tab_self.numer_szablonu[co or "TEMPLATE"]=tab_self.numer_szablonu[co or "TEMPLATE"]+1;
return kod;
end;
if(not tablica_obiektow_strony_dany_modol)then
if(not self.tablica_obiektow_strony)then self.tablica_obiektow_strony={};end;
if(not self.tablica_obiektow_strony[nazwa_modolu])then self.tablica_obiektow_strony[nazwa_modolu]={};end;
---
tablica_obiektow_strony_dany_modol=self.tablica_obiektow_strony[nazwa_modolu];
tab_self=self;
ZamieniajSzablonyStart(self,nil);
else
tab_self=tablica_obiektow_strony_dany_modol;
ZamieniajSzablonyStart(self,tablica_obiektow_strony_dany_modol);
end;
tablica_obiektow_strony_dany_modol["TEMPLATE"]={};
tablica_obiektow_strony_dany_modol["LINKW"]={};
tablica_obiektow_strony_dany_modol["LINKZ"]={};
tablica_obiektow_strony_dany_modol["VAR"]={};
tablica_obiektow_strony_dany_modol["NOWIKI"]={};
tablica_obiektow_strony_dany_modol["MATH"]={};
tablica_obiektow_strony_dany_modol["PRE"]={};
---
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Pp][Rr][Ee]%s*>(.-)</%s*[Pp][Rr][Ee]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"PRE");end);
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Nn][Oo][Ww][Ii][Kk][Ii]%s*>(.-)</%s*[Nn][Oo][Ww][Ii][Kk][Ii]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"NOWIKI");end);
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Mm][Aa][Tt][Hh]%s*>(.-)</%s*[Mm][Aa][Tt][Hh]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"MATH");end);
local ile_var=0;local ile_linkw=0;local ile_linkz=0;local ile_template=0;
repeat
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"(%[%[[^%[%]]+%]%])",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"LINKW");end);
tekst_artykulu,ile_linkz=mw.ustring.gsub(tekst_artykulu,"(%[[^%[%]]+%])",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"LINKZ");end);
repeat
tekst_artykulu,ile_var=mw.ustring.gsub(tekst_artykulu,"({{{[^{}]-}}})",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"VAR");end);
until (ile_var==0);
tekst_artykulu,ile_template=mw.ustring.gsub(tekst_artykulu,"({{[^{}]-}})",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"TEMPLATE");end);
until ((ile_var==0)and(ile_linkw==0)and(ile_linkz==0)and(ile_template==0));
return tekst_artykulu;
end;
function p.IteratorSzablonu(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony)
if(not tablica_obiektow_strony)then tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modolu];end;
local iter=mw.ustring.gmatch(tekst_rozwiniety_calego_artykulu,p.OgolnyWzor(nil,"(%a+)"));
local tak=nil;
local szablon=nil;
local iter2=nil;
local function Iterator()
local function IterMain()
local obiekt,kod=iter();
if((not obiekt)or(not kod))then return nil;end;
kod=tonumber(kod);
szablon=tablica_obiektow_strony[obiekt][kod];
tak=true;
iter2=p.IteratorSzablonu(self,szablon,nil,tablica_obiektow_strony);
return szablon,kod,obiekt;
end;
if(not tak)then
local szablon,kod,obiekt=IterMain();
return szablon,kod,obiekt;
else
local szablon,kod,obiekt=iter2();
if((not szablon)or(not kod)or(not obiekt))then
tak=nil;
local szablon,kod,obiekt=IterMain();
return szablon,kod,obiekt;
else
return szablon,kod,obiekt;
end;
end;
end;
return Iterator;
end;
function p.SkladajSzablonoweWywolanie(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony,__funkcja)
local techniczne_modul=require("Module:Techniczne");
local iterator=p.IteratorSzablonu(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony);
for szablon,kod,obiekt in iterator do
szablon=((__funkcja)and __funkcja(szablon,kod,obiekt) or szablon);
szablon=techniczne_modul["TekstBezOdwołańDoParametrówWeWzorze"](szablon);
tekst_rozwiniety_calego_artykulu=mw.ustring.gsub(tekst_rozwiniety_calego_artykulu,p.OgolnyWzor(kod,obiekt),szablon);
end;
return tekst_rozwiniety_calego_artykulu;
end;
--koniec zamykanie
function p.LiczonyHNumer()
local ulozenie=nil;
local ostatnie=0;
local h_numer_zapamietane=nil;
return function(h_numer,h_numer_nowe,jakie)
if(not h_numer_nowe)then
if(not jakie)then
if(h_numer==0)then
return h_numer_zapamietane;
elseif(h_numer<0)then
h_numer=math.abs(h_numer);
end;
else
if(h_numer==0)then
h_numer_zapamietane=0;
return 0;
end;
end;
if((ulozenie==nil)or(ulozenie>=h_numer))then
ulozenie=h_numer-1;
elseif(ostatnie+1<h_numer-ulozenie)then
ulozenie=h_numer-ostatnie-1;
end;
ostatnie=h_numer-ulozenie;
h_numer=h_numer-ulozenie;
h_numer_zapamietane=h_numer;
return h_numer;
else
ulozenie=h_numer-h_numer_nowe;
ostatnie=h_numer-ulozenie;
return h_numer_nowe;
end;
end;
end;
function p.PoziomAdresu(adres)
local lens=#adres;
local i=1;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
end;
end;
return i;
end;
function p.NazwaNadStrony(adres,numer)
if((numer)and(numer==1))then return nil;end;
if((not numer)and(numer<1)or(numer~=math.floor(numer)))then return adres;end;
local lens=#adres;
local i=1;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
end;
if(i==numer)then
return mw.ustring.sub(adres,1,p-1);
end;
end;
return adres;
end;
function p.SubNazwaNadStrony(adres,numer,krok)
if((not numer)or(numer<1)or(numer~=math.floor(numer)))then return adres;end;
krok=krok or 1;
if((krok<1)or(krok~=math.floor(krok)))then return adres;end;
local lens=#adres;
local i=1;
local a=nil;local b=nil;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
if(i==numer)then
if(not a)then a=p+1;end;
end;
if(i==numer+krok)then
if(not b)then b=p-1;break;end;
end;
end;
end;
if(not a)then a=1;end;
if(not b)then b=lens;end;
return mw.ustring.sub(adres,a,b);
end;
function p.ParametryPudelkaKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
local nazwa_przestrzeni=self.args["nazwa przestrzeni nazw"];
local nazwa_jednostki=self.args["nazwa jednostki"];
if(((nazwa_przestrzeni)and(nazwa_jednostki))or((nazwa_przestrzeni)and(not nazwa_jednostki))or((not nazwa_przestrzeni)and(nazwa_jednostki)))then
if(nazwa_jednostki)then
local html_modul=require("Module:Html");
self.naglowek=html_modul["NagłówekStronyAdresu"](nazwa_jednostki,true);
self.parametry=html_modul["ParametryStronyAdresu"](nazwa_jednostki);
end;
local pudelko_modul=require("Module:Pudełko");
local nazwa_jednostki=pudelko_modul["Pełna nazwa jednostki 2"](frame);
local nazwy_modul=require("Module:Nazwy");
self.nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki);
self.nazwa_ksiazki=nazwy_modul["NAZWAKSIĄŻKI"](nazwa_jednostki);
self.nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](nazwa_jednostki);
else
local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
self.nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
self.nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
self.nazwa_artykulu=tabela_listy_danych_analizy_ksiazki.nazwa_artykulu;
end;
end;
function p.TabelaListyArtykulowKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
local nazwa_przestrzeni;local nazwa_ksiazki;
if(tabela_listy_danych_analizy_ksiazki.zastepczy)then
nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_przestrzeni;
nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_ksiazki;
else
nazwa_przestrzeni=self.nazwa_przestrzeni;
nazwa_ksiazki=self.nazwa_ksiazki;
end;
local lista_artykulow_w_ksiazkach_w_danej_przestrzeni=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu[nazwa_przestrzeni];
if(not lista_artykulow_w_ksiazkach_w_danej_przestrzeni)then return nil;end;
local tab_lista_artykulow_w_ksiazce=lista_artykulow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
return tab_lista_artykulow_w_ksiazce.spis;
end;
function p.AnalizujArgumentySzablonu(self,frame)
local parametry_modul=require("Module:Parametry");
self.args=parametry_modul.PobierzArgsParametry(frame,true);
end;
function p.Args(self)
return self.args;
end;
function p.PelnaNazwaKsiazki(self,frame)
return ((self.nazwa_przestrzeni~="")and(self.nazwa_przestrzeni..":") or "")..self.nazwa_ksiazki
end;
function p.NazwaArtykuluKsiazki(self,frame)
return self.nazwa_artykulu..(self.parametry and ("?"..self.parametry) or "")..(self.naglowek and ("#"..self.naglowek) or "");
end;
function p.ObliczeniaInformacje(self,frame)
p:AnalizujArgumentySzablonu(frame);
p:ParametryPudelkaKsiazki(frame);
local tab_lista_artykulow_w_ksiazce=p:TabelaListyArtykulowKsiazki(frame);
if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.CzyTak(self.args["nagłówek"]);
local tab_artykul_bez_naglowka=(not naglowek) and {} or nil;
self.tab_artykul={};
local html_modul=require("Module:Html");
for _,tab_lista in ipairs(tab_lista_artykulow_w_ksiazce)do
if(tab_lista[2])then
for _,artykul_w_bazie in ipairs(tab_lista[2])do
local artykul=(not naglowek) and html_modul["NazwaStronyAdresu"](artykul_w_bazie[1][1] or artykul_w_bazie[1]) or (artykul_w_bazie[1][1] or artykul_w_bazie[1]);
if(naglowek or not tab_artykul_bez_naglowka[artykul])then
if(not naglowek)then
tab_artykul_bez_naglowka[artykul]=true;
end;
table.insert(self.tab_artykul, parametry_modul.TypeTable(artykul_w_bazie[1]) and {artykul,artykul_w_bazie[1][2],} or artykul);
end;
end;
end;
end;
self.len_tab_artykul=#self.tab_artykul;
return true;
end;
function p.PomiedzyArtykul(self,frame)
self.numer=tonumber(frame.args[1]) or 1;
self.reszta=math.fmod(self.numer,self.len_tab_artykul-2)+1;
return self.tab_artykul[self.reszta+1];
end;
function p.LosowyArtykul(self,frame)
self.numer=tonumber(frame.args[1]) or 1;
self.reszta=math.fmod(self.numer,self.len_tab_artykul)+1;
return self.tab_artykul[self.reszta];
end;
function p.TOCSilnik(lista_elementow_spisu_tresci, atrybuty)
if(lista_elementow_spisu_tresci==nil)then return nil;end;
local twor_listy="";
local liczba_ulozenia_w_menu_spisu_tresci=lista_elementow_spisu_tresci[1][2];
local poziom=1;
local num={};
for licznik, element_w_tablicy in ipairs(lista_elementow_spisu_tresci) do
if(licznik==1)then
num[#num+1]=1;
twor_listy=(atrybuty and '<ul '..atrybuty..'>' or '<ul>')..'<li class=\"toclevel-1 tocsection-1\">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
else
if(element_w_tablicy[2]==liczba_ulozenia_w_menu_spisu_tresci)then
num[#num]=num[#num]+1;
twor_listy=twor_listy..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
elseif(element_w_tablicy[2]>liczba_ulozenia_w_menu_spisu_tresci)then
num[#num+1]=1;
poziom=poziom+1;
twor_listy=twor_listy..'<ul><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
elseif(element_w_tablicy[2]<liczba_ulozenia_w_menu_spisu_tresci)then
local num_length=#num;
for i=num_length,num_length-liczba_ulozenia_w_menu_spisu_tresci+element_w_tablicy[2]+1,-1 do
table.remove(num);
end;
num[#num]=num[#num]+1;
local roznica_poziomow=liczba_ulozenia_w_menu_spisu_tresci-element_w_tablicy[2];
poziom=poziom-roznica_poziomow;
twor_listy=twor_listy..mw.ustring.rep('</li></ul>',roznica_poziomow)..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'
.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
end;
end;
end;
twor_listy=twor_listy..mw.ustring.rep('</li></ul>',liczba_ulozenia_w_menu_spisu_tresci or 0);
return twor_listy;
end;
function p.TOC(frame,lista_elementow_spisu_tresci,czy_nie_aktualny,rozciagnij)
local twor_listy=p.TOCSilnik(lista_elementow_spisu_tresci);
local parametry_modul=require("Module:Parametry");
local frame=frame or mw.getCurrentFrame();
local args=frame.args;
local toc_czy_tocramka=parametry_modul.CzyTak(args["toc"]);
if(not toc_czy_tocramka)then
local czy_ukryte=twor_listy;
local funkcja=args["funkcja"] or "UkrytaWikitabelowaListaMenu";
local wysokosc=parametry_modul.CzyTak(args["wysokość"]) and args["wysokość"] or "700px";
local szerokosc=parametry_modul.CzyTak(args["szerokość"])and args["szerokość"] or "100%";
local spis_tresci=parametry_modul.CzyTak(args["spis treści"])and args["spis treści"] or "Spis treści";
local spis_artykulu=parametry_modul.CzyTak(args["spis artykułu"]);
local czy_bez_arginesu_dolnego=parametry_modul.CzyTak(args["bez marginesu dolnego"]);
local czy_z_marginesami_ramki=parametry_modul.CzyTak(args["z marginesami ramki"]);
local zawartosc_z_marginesami=parametry_modul.CzyTak(args["zawartość z marginesami"]);
twor_listy='<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..' mw-overflow-x mw-overflow-y mw-not-overflow-x" style="'..(zawartosc_z_marginesami and ("padding:"..args["zawartość z marginesami"])..";" or "")..'width:'..szerokosc..';max-height:'..wysokosc..';overflow:auto;padding-right:5px;box-sizing:border-box;">'..(czy_ukryte or "<ul></ul>").."</div>";
local wikikod_menu='{{Tabela nawigacyjna|styl='..((czy_z_marginesami_ramki) and ("margin:"..args["z marginesami ramki"])..";" or "")..((czy_bez_arginesu_dolnego) and 'margin-bottom:0;' or "")..(czy_ukryte and "" or "visibility:hidden")..';font-size:14px;background-color:white;line-height:1.2em;width:'..(rozciagnij and "100%" or "auto")..';box-sizing:border-box'..(spis_artykulu and ';border:#aaa 1px solid' or '')..'|tytuł=<div style="text-align:left;font-size:14px;background-color:white;line-height:1.2em;'..(spis_artykulu and ';border-bottom:#aaa 1px solid' or '')..';white-space:nowrap;min-width:130px;">'..spis_tresci..'</div>|spis='..twor_listy..'|funkcja='..funkcja..'|klasa=spis_treści}}';
local rozwiniety_wikikod=frame:preprocess(wikikod_menu);
return rozwiniety_wikikod;
else
return (twor_listy and ('\n=Spis treści=\n<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..'" style="margin-left:10px">'..twor_listy..'</div>') or "");
end;
end;
function p.AnalizaSzablonuStronicowegoParsera(self,uzyskano_w_wyniku_parsowania_wywolanie_szablonu,kod,obiekt,nazwa_modolu,__Funkcja, __Funkcja2)
if(obiekt~="TEMPLATE")then return;end;
uzyskano_w_wyniku_parsowania_wywolanie_szablonu=mw.ustring.gsub(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,"\n+","");
local tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modolu];
--mw.logObject(tablica_obiektow_strony,nazwa_modolu);
local function GlownaFunkcja(wywolanie,oznaczenie_szablonu)
local techniczne_modul=require("Module:Techniczne");
local tabela_parametrow_szablonu=techniczne_modul["ParsujWywołanieSzablonu"](wywolanie);
if(not tabela_parametrow_szablonu)then return nil;end;
__Funkcja(tabela_parametrow_szablonu,wywolanie);
if(__Funkcja2)then
__Funkcja2(oznaczenie_szablonu,wywolanie,tabela_parametrow_szablonu,uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
end;
end;
GlownaFunkcja(uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
end;
function p.AnalizujLinkSzablonyOrazLinki(wyzyskane_wywolanie_szablonu_spis_tresci,nazwa_przestrzeni,nazwa_ksiazki,__FUNKCJA)
local pozycja_artykulu=nil;local nazwa=nil;
local pozycja_artykulu,nazwa=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)|([^%[%]{}]+)%]%]$")
if(not((pozycja_artykulu)and(nazwa)))then
pozycja_artykulu=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)%]%]$");
end;
local function Artykul(strona)
local nazwy_modul=require("Module:Nazwy");
local html_modul=require("Module:Html");
local parametry=html_modul["ParametryStronyAdresu"](strona);
local naglowek=html_modul["NagłówekStronyAdresu"](strona);
local nazwa_przestrzeni_strony=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_ksiazki_strony=nazwy_modul["NAZWAKSIĄŻKI"](strona);
local nazwa_artykulu_strony=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona);
if((nazwa_przestrzeni_strony==nazwa_przestrzeni)and(nazwa_ksiazki_strony==nazwa_ksiazki))then
return nazwa_artykulu_strony..(parametry and ("?"..parametry) or "")..(naglowek and ("#"..naglowek) or "");
else
return;
end;
end;
local id=nil;
local parametry;
local czy_pozycja_artykulu=nil;
if(not pozycja_artykulu)then
local link_szablon=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"({{[^{}]+}})");
if(link_szablon)then
local techniczne_modul=require("Module:Techniczne");
parametry=techniczne_modul["ParsujWywołanieSzablonu"](link_szablon);
local szablon=parametry[0];
if(szablon=="SpisTreści")then
pozycja_artykulu=parametry[1];
id=true;
elseif(szablon=="Sekcja referencyjna")then
local podstrona=parametry[3] or parametry["podstrona"];
local strona=parametry[1] or parametry["strona"];
if(not strona)then
local nazwy_modul=require("Module:Nazwy");
pozycja_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"]();
else
pozycja_artykulu=(((podstrona) and (podstrona~="")) and (podstrona..((not mw.ustring.match(strona,"^#")) and "/" or "")) or "")..strona;
end;
nazwa=parametry["nazwa"] or parametry[2];
else
if(szablon=="Link wewnętrzny")then
local strona=parametry["strona"];
nazwa=parametry["nazwa"];
pozycja_artykulu=Artykul(strona);
czy_pozycja_artykulu=strona;
elseif(szablon=="LinkOgólne")then
local strona=parametry[1];
nazwa=parametry[2];
local miano_przestrzeni_nazw=parametry["miano przestrzeni nazw"];
if(miano_przestrzeni_nazw)then
czy_pozycja_artykulu=((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw..":") or "")..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
else
pozycja_artykulu=Artykul(parametry[1])
czy_pozycja_artykulu=parametry[1];
end;
elseif(szablon=="LinkGłówna")then
pozycja_artykulu=Artykul(parametry[1])
czy_pozycja_artykulu=parametry[1];
nazwa=parametry[2];
elseif((szablon=="LinkWikijunior")or(szablon=="LinkWikijunior2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.Wikijunior..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((szablon=="LinkProjekt")or(szablon=="LinkProjekt2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.Wikibooks..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((szablon=="LinkUżytkownik")or(szablon=="LinkUżytkownik2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.User..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((__FUNKCJA)and(__FUNKCJA(parametry)))then
return nil,nil,false,parametry,true;
end;
end;
end;
else
local parametry_modul=require("Module:Parametry");
pozycja_artykulu=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=pozycja_artykulu,[2]="tak",});
local czy_pozycja_artykulu=mw.ustring.match(pozycja_artykulu,"^/(.-)/+$") or mw.ustring.match(pozycja_artykulu,"^/(.+)$");
if(czy_pozycja_artykulu)then
if(parametry_modul["CzyTakCiąg"](czy_pozycja_artykulu))then
pozycja_artykulu=czy_pozycja_artykulu;
else
pozycja_artykulu=nil;
end;
else
local czy_pozycja_artykulu=pozycja_artykulu;
pozycja_artykulu=Artykul(pozycja_artykulu);
if((not pozycja_artykulu)and(czy_pozycja_artykulu)and(not mw.ustring.match(czy_pozycja_artykulu,"[{}%[%]|]")))then
local kod_jezyka_koncowy="pl";
local kod_projektu_koncowy="b";
local linki_modul=require("Module:Linki");
local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=linki_modul.KodyNazwyStrony(czy_pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy,{});
return nil,{nazwa_strony_linku,nazwa,kod_jezyka_koncowy,kod_projektu_koncowy,},false,nil,false;
else
return {pozycja_artykulu,nazwa},nil,false,nil,false;
end;
end;
end;
if((not pozycja_artykulu)and(czy_pozycja_artykulu))then
local wiki_modul=require("Module:Wiki");
local kod_jezyka_koncowy,kod_projektu_koncowy=wiki_modul.KodyWiki(parametry["klucz projektu"],parametry["kod jezyka"],parametry["kod projektu"]);
local linki_modul=require("Module:Linki");
local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=linki_modul.KodyNazwyStrony(czy_pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy,{});
return nil,{nazwa_strony_linku,parametry[2],kod_jezyka_koncowy,kod_projektu_koncowy},false,nil,false;
end;
return {pozycja_artykulu,nazwa},nil,id,parametry,false;
end;
function p.NumerObiektu(frame, nazwa_obiektu)
local pf=frame:getParent();
local parametry_modul=require("Module:Parametry");
local uchwyt_obiektu=(frame.args["uchwyt"])and parametry_modul["Odstępy"](frame.args["uchwyt"]) or nil;
local nazwa_strony;
local html_modul=require("Module:Html");
local nazwy_modul=require("Module:Nazwy");
local ksiazkowe_modul=require("Module:Książkowe");
local techniczne_modul=require("Module:Techniczne");
local nazwa_przestrzeni;local nazwa_ksiazki;local nazwa_artykulu;
nazwa_artykulu=frame.args["nazwa artykułu"];
nazwa_ksiazki=frame.args["nazwa książki"];
local tabela_listy_danych_analizy_ksiazki=mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
if(not parametry_modul.CzyTak{[1]=tabela_listy_danych_analizy_ksiazki,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
local czy_aktualna_strona=nil;
if((not nazwa_artykulu)and(not nazwa_ksiazki))then
czy_aktualna_strona=1;
nazwa_strony="";
elseif((nazwa_artykulu)and(not nazwa_ksiazki))then
czy_aktualna_strona=2;
nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," ");
nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
else
nazwa_ksiazki=ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"](nazwa_ksiazki);
nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_ksiazki);
nazwa_ksiazki=ksiazkowe_modul["NazwaKsiążki"](nazwa_ksiazki);
nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," ");
nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
end;
local link = function(adres_linku,nazwa_linku,klasa,styl)
local czy_klasa=parametry_modul.CzyTak(klasa);
local czy_styl=parametry_modul.CzyTak(styl);
if(czy_klasa or czy_styl)then
spanramka=mw.html.create('span');
if(czy_klasa)then spanramka:attr("class",klasa);end;
if(czy_styl)then spanramka:attr('style',styl);end;
spanramka:wikitext(nazwa_linku);
local kod_html=spanramka:allDone();
return "[["..adres_linku.."|"..tostring(kod_html).."]]";
else
return "[["..adres_linku.."|"..nazwa_linku.."]]";
end;
end;
local wzor = function(uchwyt,numeracja,styl_main,styl_odstepu,pole_odstepu,styl_wzoru,klasa_wzoru,wzor,opis,opis2,klasa_opisu,styl_opisu,styl_opisu_2,wzor_opisu,wzor_opisu_2,styl_alternatywy_opisu,styl_alternatywy_opisu_2,pozycja_numeracji,klasa_numeracji,styl_numeracji,bez_automatu)
divramka=mw.html.create('div');
local parametry_modul=require("Module:Parametry");
local czy_pozycja_numeracji_prawa=parametry_modul.CzyTak(pozycja_numeracji);
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',"wzór_"..uchwyt);
else
if(numeracja)then
divramka:attr('id',"wzór_"..numeracja);
else
divramka:attr('id',"wzór_"..uchwyt);
end;
end;
end;
if(parametry_modul.CzyTak(styl_main))then
divramka:attr('style',styl_main);
end;
local uchwyt_fun=function()
if(parametry_modul.CzyTak(uchwyt))then
local divuchwytramka=mw.html.create('div');
divuchwytramka:attr('class',klasa_numeracji);
divuchwytramka:attr('style',styl_numeracji);
if(parametry_modul.CzyTak(bez_automatu))then
divuchwytramka:wikitext('(',uchwyt..")");
else
if(numeracja)then
divuchwytramka:wikitext('('..numeracja..")");
else
divuchwytramka:wikitext("(Niedopasowany uchwyt: "..uchwyt..")");
end;
end;
divramka:node(divuchwytramka);
end;
end;
local pole_odstepu_fun=function()
divramka:addClass("wzory");
local divramka2=mw.html.create('div');
divramka2:attr('style',styl_odstepu);
divramka2:wikitext(pole_odstepu);
divramka:node(divramka2);
end;
local opis_fun=function(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu)
if(parametry_modul.CzyTak(opis))then
local divramka5=mw.html.create('div')
divramka5:attr('class',klasa_opisu)
divramka5:attr('style',styl_opisu)
divramka5:wikitext(wzor_opisu)
divramka:node(divramka5)
else
local divramka5=mw.html.create('div');
divramka5:attr('style',styl_alternatywy_opisu);
divramka:node(divramka5)
end;
end;
if(not czy_pozycja_numeracji_prawa)then
uchwyt_fun();
else
pole_odstepu_fun();
end;
opis_fun(opis2,styl_opisu_2,wzor_opisu_2,styl_alternatywy_opisu_2);
local divramka4=mw.html.create('div');
divramka4:attr('class',klasa_wzoru);
divramka4:attr('style',styl_wzoru);
divramka4:wikitext(wzor);
divramka:node(divramka4);
opis_fun(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu);
if(czy_pozycja_numeracji_prawa)then
uchwyt_fun();
else
pole_odstepu_fun();
end;
return tostring(divramka:allDone());
end;
local rysunek=function(uchwyt,numeracja,opis, rysunek, pozycja,rozmiar,klasa,styl,bez_automatu)
local divramka=mw.html.create('div');
divramka:attr('class',klasa);
divramka:attr('style',styl);
local czy_uchwyt=parametry_modul.CzyTak(uchwyt);
if(czy_uchwyt)then
if(numeracja)then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',"rysunek_"..uchwyt);
else
divramka:attr('id',"rysunek_"..numeracja);
end;
else
divramka:attr('id',"rysunek_"..uchwyt);
end;
end;
local czy_opis=parametry_modul.CzyTak(opis);
local wywolanie_rysunku="[[File:"..((rysunek)and rysunek or "Przykładowy rysunek.svg").."|thumb|"..(pozycja or "right").."|"..(rozmiar or "200px")..((czy_uchwyt or czy_opis)and ("|"..((parametry_modul.CzyTak(uchwyt))and "(Rys. "..((numeracja)and (parametry_modul.CzyTak(bez_automatu) and uchwyt or numeracja) or "Niedopasowany uchwyt: "..uchwyt)..")" or "").." "..opis) or "").."]]";
divramka:wikitext(wywolanie_rysunku);
return tostring(divramka:allDone());
end;
local wypowiedzenie = function(uchwyt,przedrostek,numeracja,klasa,styl,przedrostek2,rodzaj,kogo,czego,jakie,styl_naglowka,styl_tekstu,tekst,bez_automatu)
local divramka=mw.html.create('div');
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',przedrostek.."_"..uchwyt);
else
divramka:attr('id',przedrostek.."_"..(numeracja or uchwyt));
end;
end;
divramka:attr('class',klasa);
divramka:attr('style',styl);
local wikitext="";
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
wikitext="("..przedrostek2.." "..uchwyt..")";
else
if(numeracja)then
wikitext="("..przedrostek2.." "..numeracja..")";
else
wikitext="("..przedrostek2.." Niedopawany uchwyt: "..uchwyt..")";
end;
end;
end;
if(parametry_modul.CzyTak(styl_naglowka))then
local spanramka=mw.html.create('span');
spanramka:attr('style',styl_naglowka);
spanramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
divramka:node(spanramka);
else
divramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
end;
divramka:wikitext('<BR>');
if(parametry_modul.CzyTak(styl_tekstu))then
local spanramka=mw.html.create('span');
spanramka:attr('style',styl_tekstu);
spanramka:wikitext(tekst);
divramka:node(spanramka);
else
divramka:wikitext(tekst);
end;
return tostring(divramka:allDone());
end;
local punkty = function(uchwyt,numeracja,przedrostek_id,klasa,styl,prefiks,bez_automatu)
local spanramka=mw.html.create('sup');
spanramka:attr('style',klasa);
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
spanramka:attr('id',przedrostek_id.."_"..uchwyt);
else
if(parametry_modul.CzyTak(numeracja))then
spanramka:attr('id',przedrostek_id.."_"..numeracja);
else
spanramka:attr('id',przedrostek_id.."_"..uchwyt);
end;
end;
end;
spanramka:attr('style',styl);
local smallramka=mw.html.create('small');
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
smallramka:wikitext(prefiks..": "..uchwyt);
else
if(parametry_modul.CzyTak(numeracja))then
smallramka:wikitext('['..prefiks..": "..numeracja..']');
else
smallramka:wikitext('['..prefiks..": Niedopsowany uchwyt: "..uchwyt..']');
end;
end;
else
smallramka:wikitext('['..prefiks..": Niedopasowany uchwyt: brak uchwytu]");
end;
spanramka:node(smallramka);
return tostring(spanramka:allDone());
end;
local nazwa_strony_fun=function(nazwa_strony)
if((tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni)
and(tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki==nazwa_ksiazki)
and (tabela_listy_danych_analizy_ksiazki.nazwa_artykulu==nazwa_artykulu))then
return "";
end;
return nazwa_strony;
end;
if(parametry_modul.CzyTak(frame.args["bez automatu"]))then
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
if(uchwyt_obiektu)then
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"]..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
else
return "("..link(nazwa_strony.."#"..frame.args["id"].."_".."Nieznany uchwyt",frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
end;
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,uchwyt_obiektu,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,uchwyt_obiektu,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],uchwyt_obiektu,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,uchwyt_obiektu,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return uchwyt_obiektu;
end;
else
return uchwyt_obiektu;
end;
end;
local tabela_listy_uchwytow_i_numeracji_na_stronie;
if(czy_aktualna_strona==nil)then
local dane_analizy_artykulu=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu;
if(dane_analizy_artykulu)then
local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni=dane_analizy_artykulu[nazwa_przestrzeni];
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni)then
local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
if(lista_artykolow)then
local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
if(tabela_listy_analizy_na_stronie)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
end;
end;
end;
end;
end;
elseif(czy_aktualna_strona==1)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_danych_analizy_ksiazki.tablica_aktualnego_artykolu;
if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_na_stronie,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
elseif(czy_aktualna_strona==2)then
tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_ksiazki;
if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
if(lista_artykolow)then
local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
if(tabela_listy_analizy_na_stronie)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
end;
end;
end;
end;
if(tabela_listy_uchwytow_i_numeracji_na_stronie)then
local spis_uchwytow=tabela_listy_uchwytow_i_numeracji_na_stronie[nazwa_obiektu];
if(spis_uchwytow)then
if((uchwyt_obiektu)and(uchwyt_obiektu~=""))then
for _, dany_artykul in ipairs(spis_uchwytow)do
if(dany_artykul[1]==uchwyt_obiektu)then
if(nazwa_obiektu~="Śródtytuł")then
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
if(not dany_artykul[2])then
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
end;
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..dany_artykul[2],frame.args["przedrostek"]..dany_artykul[2],frame.args["klasa"],frame.args["styl"])..")";
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,dany_artykul[2],frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,dany_artykul[2],frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],dany_artykul[2],frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,dany_artykul[2],frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
end;
else
return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
end;
else
if(dany_artykul[2])then
local tytul_szablonu=frame.args["nazwa szablonu"] or techniczne_modul.NazwaSzablonu(frame:getParent():getTitle());
if(tytul_szablonu=="LinkŚródtytuł")then
return link(dany_artykul[2][1],dany_artykul[2][2],frame.args["klasa"],frame.args["styl"])
elseif(tytul_szablonu=="LinkŚródtytułTutaj")then
return link(dany_artykul[2][1],"tutaj",frame.args["klasa"],frame.args["styl"])
end;
end;
end;
end;
end;
end;
end;
end;
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,nil,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,nil,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],nil,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,nil,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
else
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
end;
return p;
m0aj9ympfbtox0qli8rq5426dxx5a8g
439036
439035
2022-08-29T10:14:09Z
Persino
2851
Scribunto
text/plain
local p={};
--zamykanie
local znak_127=mw.ustring.char(127);
function p.OgolnyWzor(numer_szablonu,co)
local wzor=znak_127.."'\"`UNIQ%-%-"..(co or "(%a+)").."%-"..(numer_szablonu or "(%d+)").."%-QINU`\"'"..znak_127;
return wzor;
end;
function p.KodujStroneObiektowa(self,tekst_artykulu,nazwa_modolu,tablica_obiektow_strony_dany_modol)
local tab_self;
local function ZamieniajSzablonyStart(self,tablica_obiektow_strony_dany_modol)
tab_self.numer_szablonu={};
tab_self.numer_szablonu["TEMPLATE"]=1;
tab_self.numer_szablonu["LINKW"]=1;
tab_self.numer_szablonu["LINKZ"]=1;
tab_self.numer_szablonu["VAR"]=1;
tab_self.numer_szablonu["NOWIKI"]=1;
tab_self.numer_szablonu["MATH"]=1;
tab_self.numer_szablonu["PRE"]=1;
end;
local function ZamieniajSzablony(self,szablon,tablica_obiektow_strony,co,czy_nie_self)
local kod=znak_127.."'\"`UNIQ--"..(co or "TEMPLATE").."-"..tab_self.numer_szablonu[co or "TEMPLATE"].."-QINU`\"'"..znak_127;
tablica_obiektow_strony[co or "TEMPLATE"][tab_self.numer_szablonu[co or "TEMPLATE"]]=szablon;
tab_self.numer_szablonu[co or "TEMPLATE"]=tab_self.numer_szablonu[co or "TEMPLATE"]+1;
return kod;
end;
if(not tablica_obiektow_strony_dany_modol)then
if(not self.tablica_obiektow_strony)then self.tablica_obiektow_strony={};end;
if(not self.tablica_obiektow_strony[nazwa_modolu])then self.tablica_obiektow_strony[nazwa_modolu]={};end;
---
tablica_obiektow_strony_dany_modol=self.tablica_obiektow_strony[nazwa_modolu];
tab_self=self;
ZamieniajSzablonyStart(self,nil);
else
tab_self=tablica_obiektow_strony_dany_modol;
ZamieniajSzablonyStart(self,tablica_obiektow_strony_dany_modol);
end;
tablica_obiektow_strony_dany_modol["TEMPLATE"]={};
tablica_obiektow_strony_dany_modol["LINKW"]={};
tablica_obiektow_strony_dany_modol["LINKZ"]={};
tablica_obiektow_strony_dany_modol["VAR"]={};
tablica_obiektow_strony_dany_modol["NOWIKI"]={};
tablica_obiektow_strony_dany_modol["MATH"]={};
tablica_obiektow_strony_dany_modol["PRE"]={};
---
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Pp][Rr][Ee]%s*>(.-)</%s*[Pp][Rr][Ee]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"PRE");end);
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Nn][Oo][Ww][Ii][Kk][Ii]%s*>(.-)</%s*[Nn][Oo][Ww][Ii][Kk][Ii]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"NOWIKI");end);
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"<%s*[Mm][Aa][Tt][Hh]%s*>(.-)</%s*[Mm][Aa][Tt][Hh]%s*>",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"MATH");end);
local ile_var=0;local ile_linkw=0;local ile_linkz=0;local ile_template=0;
repeat
tekst_artykulu,ile_linkw=mw.ustring.gsub(tekst_artykulu,"(%[%[[^%[%]]+%]%])",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"LINKW");end);
tekst_artykulu,ile_linkz=mw.ustring.gsub(tekst_artykulu,"(%[[^%[%]]+%])",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"LINKZ");end);
repeat
tekst_artykulu,ile_var=mw.ustring.gsub(tekst_artykulu,"({{{[^{}]-}}})",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"VAR");end);
until (ile_var==0);
tekst_artykulu,ile_template=mw.ustring.gsub(tekst_artykulu,"({{[^{}]-}})",function(szablon) return ZamieniajSzablony(self,szablon,tablica_obiektow_strony_dany_modol,"TEMPLATE");end);
until ((ile_var==0)and(ile_linkw==0)and(ile_linkz==0)and(ile_template==0));
return tekst_artykulu;
end;
function p.IteratorSzablonu(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony)
if(not tablica_obiektow_strony)then tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modolu];end;
local iter=mw.ustring.gmatch(tekst_rozwiniety_calego_artykulu,p.OgolnyWzor(nil,"(%a+)"));
local tak=nil;
local szablon=nil;
local iter2=nil;
local function Iterator()
local function IterMain()
local obiekt,kod=iter();
if((not obiekt)or(not kod))then return nil;end;
kod=tonumber(kod);
szablon=tablica_obiektow_strony[obiekt][kod];
tak=true;
iter2=p.IteratorSzablonu(self,szablon,nil,tablica_obiektow_strony);
return szablon,kod,obiekt;
end;
if(not tak)then
local szablon,kod,obiekt=IterMain();
return szablon,kod,obiekt;
else
local szablon,kod,obiekt=iter2();
if((not szablon)or(not kod)or(not obiekt))then
tak=nil;
local szablon,kod,obiekt=IterMain();
return szablon,kod,obiekt;
else
return szablon,kod,obiekt;
end;
end;
end;
return Iterator;
end;
function p.SkladajSzablonoweWywolanie(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony,__funkcja)
local techniczne_modul=require("Module:Techniczne");
local iterator=p.IteratorSzablonu(self,tekst_rozwiniety_calego_artykulu,nazwa_modolu,tablica_obiektow_strony);
for szablon,kod,obiekt in iterator do
szablon=((__funkcja)and __funkcja(szablon,kod,obiekt) or szablon);
szablon=techniczne_modul["TekstBezOdwołańDoParametrówWeWzorze"](szablon);
tekst_rozwiniety_calego_artykulu=mw.ustring.gsub(tekst_rozwiniety_calego_artykulu,p.OgolnyWzor(kod,obiekt),szablon);
end;
return tekst_rozwiniety_calego_artykulu;
end;
--koniec zamykanie
function p.LiczonyHNumer()
local ulozenie=nil;
local ostatnie=0;
local h_numer_zapamietane=nil;
return function(h_numer,h_numer_nowe,jakie)
if(not h_numer_nowe)then
if(not jakie)then
if(h_numer==0)then
return h_numer_zapamietane;
elseif(h_numer<0)then
h_numer=math.abs(h_numer);
end;
else
if(h_numer==0)then
h_numer_zapamietane=0;
return 0;
end;
end;
if((ulozenie==nil)or(ulozenie>=h_numer))then
ulozenie=h_numer-1;
elseif(ostatnie+1<h_numer-ulozenie)then
ulozenie=h_numer-ostatnie-1;
end;
ostatnie=h_numer-ulozenie;
h_numer=h_numer-ulozenie;
h_numer_zapamietane=h_numer;
return h_numer;
else
ulozenie=h_numer-h_numer_nowe;
ostatnie=h_numer-ulozenie;
return h_numer_nowe;
end;
end;
end;
function p.PoziomAdresu(adres)
local lens=#adres;
local i=1;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
end;
end;
return i;
end;
function p.NazwaNadStrony(adres,numer)
if((numer)and(numer==1))then return nil;end;
if((not numer)and(numer<1)or(numer~=math.floor(numer)))then return adres;end;
local lens=#adres;
local i=1;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
end;
if(i==numer)then
return mw.ustring.sub(adres,1,p-1);
end;
end;
return adres;
end;
function p.SubNazwaNadStrony(adres,numer,krok)
if((not numer)or(numer<1)or(numer~=math.floor(numer)))then return adres;end;
krok=krok or 1;
if((krok<1)or(krok~=math.floor(krok)))then return adres;end;
local lens=#adres;
local i=1;
local a=nil;local b=nil;
for p=1, lens,1 do
local znak=mw.ustring.sub(adres,p,p);
if(znak=="/")then
i=i+1;
if(i==numer)then
if(not a)then a=p+1;end;
end;
if(i==numer+krok)then
if(not b)then b=p-1;break;end;
end;
end;
end;
if(not a)then a=1;end;
if(not b)then b=lens;end;
return mw.ustring.sub(adres,a,b);
end;
function p.ParametryPudelkaKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
local nazwa_przestrzeni=self.args["nazwa przestrzeni nazw"];
local nazwa_jednostki=self.args["nazwa jednostki"];
if(((nazwa_przestrzeni)and(nazwa_jednostki))or((nazwa_przestrzeni)and(not nazwa_jednostki))or((not nazwa_przestrzeni)and(nazwa_jednostki)))then
if(nazwa_jednostki)then
local html_modul=require("Module:Html");
self.naglowek=html_modul["NagłówekStronyAdresu"](nazwa_jednostki,true);
self.parametry=html_modul["ParametryStronyAdresu"](nazwa_jednostki);
end;
local pudelko_modul=require("Module:Pudełko");
local nazwa_jednostki=pudelko_modul["Pełna nazwa jednostki 2"](frame);
local nazwy_modul=require("Module:Nazwy");
self.nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_jednostki);
self.nazwa_ksiazki=nazwy_modul["NAZWAKSIĄŻKI"](nazwa_jednostki);
self.nazwa_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](nazwa_jednostki);
else
local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
self.nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
self.nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
self.nazwa_artykulu=tabela_listy_danych_analizy_ksiazki.nazwa_artykulu;
end;
end;
function p.TabelaListyArtykulowKsiazki(self,frame,tabela_listy_danych_analizy_ksiazki)
local tabela_listy_danych_analizy_ksiazki=tabela_listy_danych_analizy_ksiazki or mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
local nazwa_przestrzeni;local nazwa_ksiazki;
if(tabela_listy_danych_analizy_ksiazki.zastepczy)then
nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_przestrzeni;
nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.normalna_nazwa_ksiazki;
else
nazwa_przestrzeni=self.nazwa_przestrzeni;
nazwa_ksiazki=self.nazwa_ksiazki;
end;
local lista_artykulow_w_ksiazkach_w_danej_przestrzeni=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu[nazwa_przestrzeni];
if(not lista_artykulow_w_ksiazkach_w_danej_przestrzeni)then return nil;end;
local tab_lista_artykulow_w_ksiazce=lista_artykulow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
return tab_lista_artykulow_w_ksiazce.spis;
end;
function p.AnalizujArgumentySzablonu(self,frame)
local parametry_modul=require("Module:Parametry");
self.args=parametry_modul.PobierzArgsParametry(frame,true);
end;
function p.Args(self)
return self.args;
end;
function p.PelnaNazwaKsiazki(self,frame)
return ((self.nazwa_przestrzeni~="")and(self.nazwa_przestrzeni..":") or "")..self.nazwa_ksiazki
end;
function p.NazwaArtykuluKsiazki(self,frame)
return self.nazwa_artykulu..(self.parametry and ("?"..self.parametry) or "")..(self.naglowek and ("#"..self.naglowek) or "");
end;
function p.ObliczeniaInformacje(self,frame)
p:AnalizujArgumentySzablonu(frame);
p:ParametryPudelkaKsiazki(frame);
local tab_lista_artykulow_w_ksiazce=p:TabelaListyArtykulowKsiazki(frame);
if(not tab_lista_artykulow_w_ksiazce)then return nil;end;
local parametry_modul=require("Module:Parametry");
local args=parametry_modul.CzyTak(self.args["nagłówek"]);
local tab_artykul_bez_naglowka=(not naglowek) and {} or nil;
self.tab_artykul={};
local html_modul=require("Module:Html");
for _,tab_lista in ipairs(tab_lista_artykulow_w_ksiazce)do
if(tab_lista[2])then
for _,artykul_w_bazie in ipairs(tab_lista[2])do
local artykul=(not naglowek) and html_modul["NazwaStronyAdresu"](artykul_w_bazie[1][1] or artykul_w_bazie[1]) or (artykul_w_bazie[1][1] or artykul_w_bazie[1]);
if(naglowek or not tab_artykul_bez_naglowka[artykul])then
if(not naglowek)then
tab_artykul_bez_naglowka[artykul]=true;
end;
table.insert(self.tab_artykul, parametry_modul.TypeTable(artykul_w_bazie[1]) and {artykul,artykul_w_bazie[1][2],} or artykul);
end;
end;
end;
end;
self.len_tab_artykul=#self.tab_artykul;
return true;
end;
function p.PomiedzyArtykul(self,frame)
self.numer=tonumber(frame.args[1]) or 1;
self.reszta=math.fmod(self.numer,self.len_tab_artykul-2)+1;
return self.tab_artykul[self.reszta+1];
end;
function p.LosowyArtykul(self,frame)
self.numer=tonumber(frame.args[1]) or 1;
self.reszta=math.fmod(self.numer,self.len_tab_artykul)+1;
return self.tab_artykul[self.reszta];
end;
function p.TOCSilnik(lista_elementow_spisu_tresci, atrybuty)
if(lista_elementow_spisu_tresci==nil)then return nil;end;
local twor_listy="";
local liczba_ulozenia_w_menu_spisu_tresci=lista_elementow_spisu_tresci[1][2];
local poziom=1;
local num={};
for licznik, element_w_tablicy in ipairs(lista_elementow_spisu_tresci) do
if(licznik==1)then
num[#num+1]=1;
twor_listy=(atrybuty and '<ul '..atrybuty..'>' or '<ul>')..'<li class=\"toclevel-1 tocsection-1\">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
else
if(element_w_tablicy[2]==liczba_ulozenia_w_menu_spisu_tresci)then
num[#num]=num[#num]+1;
twor_listy=twor_listy..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
elseif(element_w_tablicy[2]>liczba_ulozenia_w_menu_spisu_tresci)then
num[#num+1]=1;
poziom=poziom+1;
twor_listy=twor_listy..'<ul><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
elseif(element_w_tablicy[2]<liczba_ulozenia_w_menu_spisu_tresci)then
local num_length=#num;
for i=num_length,num_length-liczba_ulozenia_w_menu_spisu_tresci+element_w_tablicy[2]+1,-1 do
table.remove(num);
end;
num[#num]=num[#num]+1;
local roznica_poziomow=liczba_ulozenia_w_menu_spisu_tresci-element_w_tablicy[2];
poziom=poziom-roznica_poziomow;
twor_listy=twor_listy..mw.ustring.rep('</li></ul>',roznica_poziomow)..'</li><li class="toclevel-'..poziom..' tocsection-'..licznik..'">'
.."[["..element_w_tablicy[1][1].."|<span class=\"tocnumber\">"..table.concat(num,".").."</span><span class=\"toctext\">"..element_w_tablicy[1][2].."</span>]]";
liczba_ulozenia_w_menu_spisu_tresci=element_w_tablicy[2];
end;
end;
end;
twor_listy=twor_listy..mw.ustring.rep('</li></ul>',liczba_ulozenia_w_menu_spisu_tresci or 0);
return twor_listy;
end;
function p.TOC(frame,lista_elementow_spisu_tresci,czy_nie_aktualny,rozciagnij)
local twor_listy=p.TOCSilnik(lista_elementow_spisu_tresci);
local parametry_modul=require("Module:Parametry");
local frame=frame or mw.getCurrentFrame();
local args=frame.args;
local toc_czy_tocramka=parametry_modul.CzyTak(args["toc"]);
if(not toc_czy_tocramka)then
local czy_ukryte=twor_listy;
local funkcja=args["funkcja"] or "UkrytaWikitabelowaListaMenu";
local wysokosc=parametry_modul.CzyTak(args["wysokość"]) and args["wysokość"] or "700px";
local szerokosc=parametry_modul.CzyTak(args["szerokość"])and args["szerokość"] or "100%";
local spis_tresci=parametry_modul.CzyTak(args["spis treści"])and args["spis treści"] or "Spis treści";
local spis_artykulu=parametry_modul.CzyTak(args["spis artykułu"]);
local czy_bez_arginesu_dolnego=parametry_modul.CzyTak(args["bez marginesu dolnego"]);
local czy_z_marginesami_ramki=parametry_modul.CzyTak(args["z marginesami ramki"]);
local zawartosc_z_marginesami=parametry_modul.CzyTak(args["zawartość z marginesami"]);
twor_listy='<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..' mw-overflow-x mw-overflow-y mw-not-overflow-x" style="'..(zawartosc_z_marginesami and ("padding:"..args["zawartość z marginesami"])..";" or "")..'width:'..szerokosc..';max-height:'..wysokosc..';overflow:auto;padding-right:5px;box-sizing:border-box;">'..(czy_ukryte or "<ul></ul>").."</div>";
local wikikod_menu='{{Tabela nawigacyjna|styl='..((czy_z_marginesami_ramki) and ("margin:"..args["z marginesami ramki"])..";" or "")..((czy_bez_arginesu_dolnego) and 'margin-bottom:0;' or "")..(czy_ukryte and "" or "visibility:hidden")..';font-size:14px;background-color:white;line-height:1.2em;width:'..(rozciagnij and "100%" or "auto")..';box-sizing:border-box'..(spis_artykulu and ';border:#aaa 1px solid' or '')..'|tytuł=<div style="text-align:left;font-size:14px;background-color:white;line-height:1.2em;'..(spis_artykulu and ';border-bottom:#aaa 1px solid' or '')..';white-space:nowrap;min-width:130px;">'..spis_tresci..'</div>|spis='..twor_listy..'|funkcja='..funkcja..'|klasa=spis_treści}}';
local rozwiniety_wikikod=frame:preprocess(wikikod_menu);
return rozwiniety_wikikod;
else
return (twor_listy and ('\n=Spis treści=\n<div class="toc_ogólnie_spis '..(not czy_nie_aktualny and 'toc_spis' or 'toc_inny_spis')..'" style="margin-left:10px">'..twor_listy..'</div>') or "");
end;
end;
function p.AnalizaSzablonuStronicowegoParsera(self,uzyskano_w_wyniku_parsowania_wywolanie_szablonu,kod,obiekt,nazwa_modolu,__Funkcja, __Funkcja2)
if(obiekt~="TEMPLATE")then return;end;
uzyskano_w_wyniku_parsowania_wywolanie_szablonu=mw.ustring.gsub(uzyskano_w_wyniku_parsowania_wywolanie_szablonu,"\n+","");
local tablica_obiektow_strony=self.tablica_obiektow_strony[nazwa_modolu];
--mw.logObject(tablica_obiektow_strony,nazwa_modolu);
local function GlownaFunkcja(wywolanie,oznaczenie_szablonu)
local techniczne_modul=require("Module:Techniczne");
local tabela_parametrow_szablonu=techniczne_modul["ParsujWywołanieSzablonu"](wywolanie);
if(not tabela_parametrow_szablonu)then return nil;end;
__Funkcja(tabela_parametrow_szablonu,wywolanie);
if(__Funkcja2)then
__Funkcja2(oznaczenie_szablonu,wywolanie,tabela_parametrow_szablonu,uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
end;
end;
GlownaFunkcja(uzyskano_w_wyniku_parsowania_wywolanie_szablonu);
end;
function p.AnalizujLinkSzablonyOrazLinki(wyzyskane_wywolanie_szablonu_spis_tresci,nazwa_przestrzeni,nazwa_ksiazki,__FUNKCJA)
local pozycja_artykulu=nil;local nazwa=nil;
local pozycja_artykulu,nazwa=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)|([^%[%]{}]+)%]%]$")
if(not((pozycja_artykulu)and(nazwa)))then
pozycja_artykulu=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"^%[%[([^%[%]{}]+)%]%]$");
end;
local function Artykul(strona)
local nazwy_modul=require("Module:Nazwy");
local html_modul=require("Module:Html");
local parametry=html_modul["ParametryStronyAdresu"](strona);
local naglowek=html_modul["NagłówekStronyAdresu"](strona);
local nazwa_przestrzeni_strony=nazwy_modul["NAZWAPRZESTRZENI"](strona);
local nazwa_ksiazki_strony=nazwy_modul["NAZWAKSIĄŻKI"](strona);
local nazwa_artykulu_strony=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"](strona);
if((nazwa_przestrzeni_strony==nazwa_przestrzeni)and(nazwa_ksiazki_strony==nazwa_ksiazki))then
return nazwa_artykulu_strony..(parametry and ("?"..parametry) or "")..(naglowek and ("#"..naglowek) or "");
else
return;
end;
end;
local id=nil;
local parametry;
local czy_pozycja_artykulu=nil;
if(not pozycja_artykulu)then
local link_szablon=mw.ustring.match(wyzyskane_wywolanie_szablonu_spis_tresci,"({{[^{}]+}})");
if(link_szablon)then
local techniczne_modul=require("Module:Techniczne");
parametry=techniczne_modul["ParsujWywołanieSzablonu"](link_szablon);
local szablon=parametry[0];
if(szablon=="SpisTreści")then
pozycja_artykulu=parametry[1];
id=true;
elseif(szablon=="Sekcja referencyjna")then
local podstrona=parametry[3] or parametry["podstrona"];
local strona=parametry[1] or parametry["strona"];
if(not strona)then
local nazwy_modul=require("Module:Nazwy");
pozycja_artykulu=nazwy_modul["NAZWAARTYKUŁUKSIĄŻKI"]();
else
pozycja_artykulu=(((podstrona) and (podstrona~="")) and (podstrona..((not mw.ustring.match(strona,"^#")) and "/" or "")) or "")..strona;
end;
nazwa=parametry["nazwa"] or parametry[2];
else
if(szablon=="Link wewnętrzny")then
local strona=parametry["strona"];
nazwa=parametry["nazwa"];
pozycja_artykulu=Artykul(strona);
czy_pozycja_artykulu=strona;
elseif(szablon=="LinkOgólne")then
local strona=parametry[1];
nazwa=parametry[2];
local miano_przestrzeni_nazw=parametry["miano przestrzeni nazw"];
if(miano_przestrzeni_nazw)then
czy_pozycja_artykulu=((miano_przestrzeni_nazw~="")and(miano_przestrzeni_nazw..":") or "")..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
else
pozycja_artykulu=Artykul(parametry[1])
czy_pozycja_artykulu=parametry[1];
end;
elseif(szablon=="LinkGłówna")then
pozycja_artykulu=Artykul(parametry[1])
czy_pozycja_artykulu=parametry[1];
nazwa=parametry[2];
elseif((szablon=="LinkWikijunior")or(szablon=="LinkWikijunior2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.Wikijunior..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((szablon=="LinkProjekt")or(szablon=="LinkProjekt2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.Wikibooks..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((szablon=="LinkUżytkownik")or(szablon=="LinkUżytkownik2"))then
local nazwy_np_modul=mw.loadData("Module:Nazwy/Np");
czy_pozycja_artykulu=nazwy_np_modul.User..":"..parametry[1];
pozycja_artykulu=Artykul(czy_pozycja_artykulu);
nazwa=parametry[2];
elseif((__FUNKCJA)and(__FUNKCJA(parametry)))then
return nil,nil,false,parametry,true;
end;
end;
end;
else
local parametry_modul=require("Module:Parametry");
pozycja_artykulu=mw.getContentLanguage():ucfirst(parametry_modul["Odstępy"]{[1]=pozycja_artykulu,[2]="tak",});
local czy_pozycja_artykulu=mw.ustring.match(pozycja_artykulu,"^/(.-)/+$") or mw.ustring.match(pozycja_artykulu,"^/(.+)$");
if(czy_pozycja_artykulu)then
if(parametry_modul["CzyTakCiąg"](czy_pozycja_artykulu))then
pozycja_artykulu=czy_pozycja_artykulu;
else
pozycja_artykulu=nil;
end;
else
local czy_pozycja_artykulu=pozycja_artykulu;
pozycja_artykulu=Artykul(pozycja_artykulu);
if((not pozycja_artykulu)and(czy_pozycja_artykulu)and(not mw.ustring.match(czy_pozycja_artykulu,"[{}%[%]|]")))then
local kod_jezyka_koncowy="pl";
local kod_projektu_koncowy="b";
local linki_modul=require("Module:Linki");
local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=linki_modul.KodyNazwyStrony(czy_pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy,{});
return nil,{nazwa_strony_linku,nazwa,kod_jezyka_koncowy,kod_projektu_koncowy,},false,nil,false;
else
return {pozycja_artykulu,nazwa},nil,false,nil,false;
end;
end;
end;
if((not pozycja_artykulu)and(czy_pozycja_artykulu))then
local wiki_modul=require("Module:Wiki");
local kod_jezyka_koncowy,kod_projektu_koncowy=wiki_modul.KodyWiki(parametry["klucz projektu"],parametry["kod jezyka"],parametry["kod projektu"]);
local linki_modul=require("Module:Linki");
local nazwa_strony_linku,kod_jezyka_koncowy,kod_projektu_koncowy, kod_jezyka_poczatkowy, kod_projektu_poczatkowy=linki_modul.KodyNazwyStrony(czy_pozycja_artykulu,kod_jezyka_koncowy,kod_projektu_koncowy,{});
return nil,{nazwa_strony_linku,parametry[2],kod_jezyka_koncowy,kod_projektu_koncowy},false,nil,false;
end;
return {pozycja_artykulu,nazwa},nil,id,parametry,false;
end;
function p.NumerObiektu(frame, nazwa_obiektu)
local pf=frame:getParent();
local parametry_modul=require("Module:Parametry");
local uchwyt_obiektu=(frame.args["uchwyt"])and parametry_modul["Odstępy"](frame.args["uchwyt"]) or nil;
local nazwa_strony;
local html_modul=require("Module:Html");
local nazwy_modul=require("Module:Nazwy");
local ksiazkowe_modul=require("Module:Książkowe");
local techniczne_modul=require("Module:Techniczne");
local nazwa_przestrzeni;local nazwa_ksiazki;local nazwa_artykulu;
nazwa_artykulu=frame.args["nazwa artykułu"];
nazwa_ksiazki=frame.args["nazwa książki"];
local tabela_listy_danych_analizy_ksiazki=mw.loadData("Module:StronicowyParser/informacje").tablica_zebranych_danych_ksiazkowych;
if(not parametry_modul.CzyTak{[1]=tabela_listy_danych_analizy_ksiazki,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
local czy_aktualna_strona=nil;
if((not nazwa_artykulu)and(not nazwa_ksiazki))then
czy_aktualna_strona=1;
nazwa_strony="";
elseif((nazwa_artykulu)and(not nazwa_ksiazki))then
czy_aktualna_strona=2;
nazwa_przestrzeni=tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni;
nazwa_ksiazki=tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki;
nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," ");
nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
else
nazwa_ksiazki=ksiazkowe_modul["PełnaNazwaStronicowejKsiążki"](nazwa_ksiazki);
nazwa_przestrzeni=nazwy_modul["NAZWAPRZESTRZENI"](nazwa_ksiazki);
nazwa_ksiazki=ksiazkowe_modul["NazwaKsiążki"](nazwa_ksiazki);
nazwa_artykulu=html_modul["TransformacjaKoduZnakuDoZnakuŁancucha"](nazwa_artykulu);
nazwa_artykulu,_=mw.ustring.gsub(nazwa_artykulu,"([_%s]+)"," ");
nazwa_strony=((nazwa_przestrzeni~="") and (nazwa_przestrzeni..":") or "")..nazwa_ksiazki..((nazwa_artykulu~="") and ("/"..nazwa_artykulu) or "");
end;
local link = function(adres_linku,nazwa_linku,klasa,styl)
local czy_klasa=parametry_modul.CzyTak(klasa);
local czy_styl=parametry_modul.CzyTak(styl);
if(czy_klasa or czy_styl)then
spanramka=mw.html.create('span');
if(czy_klasa)then spanramka:attr("class",klasa);end;
if(czy_styl)then spanramka:attr('style',styl);end;
spanramka:wikitext(nazwa_linku);
local kod_html=spanramka:allDone();
return "[["..adres_linku.."|"..tostring(kod_html).."]]";
else
return "[["..adres_linku.."|"..nazwa_linku.."]]";
end;
end;
local wzor = function(uchwyt,numeracja,styl_main,styl_odstepu,pole_odstepu,styl_wzoru,klasa_wzoru,wzor,opis,opis2,klasa_opisu,styl_opisu,styl_opisu_2,wzor_opisu,wzor_opisu_2,styl_alternatywy_opisu,styl_alternatywy_opisu_2,pozycja_numeracji,klasa_numeracji,styl_numeracji,bez_automatu)
divramka=mw.html.create('div');
local parametry_modul=require("Module:Parametry");
local czy_pozycja_numeracji_prawa=parametry_modul.CzyTak(pozycja_numeracji);
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',"wzór_"..uchwyt);
else
if(numeracja)then
divramka:attr('id',"wzór_"..numeracja);
else
divramka:attr('id',"wzór_"..uchwyt);
end;
end;
end;
if(parametry_modul.CzyTak(styl_main))then
divramka:attr('style',styl_main);
end;
local uchwyt_fun=function()
if(parametry_modul.CzyTak(uchwyt))then
local divuchwytramka=mw.html.create('div');
divuchwytramka:attr('class',klasa_numeracji);
divuchwytramka:attr('style',styl_numeracji);
if(parametry_modul.CzyTak(bez_automatu))then
divuchwytramka:wikitext('(',uchwyt..")");
else
if(numeracja)then
divuchwytramka:wikitext('('..numeracja..")");
else
divuchwytramka:wikitext("(Niedopasowany uchwyt: "..uchwyt..")");
end;
end;
divramka:node(divuchwytramka);
end;
end;
local pole_odstepu_fun=function()
divramka:addClass("wzory");
local divramka2=mw.html.create('div');
divramka2:attr('style',styl_odstepu);
divramka2:wikitext(pole_odstepu);
divramka:node(divramka2);
end;
local opis_fun=function(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu)
if(parametry_modul.CzyTak(opis))then
local divramka5=mw.html.create('div')
divramka5:attr('class',klasa_opisu)
divramka5:attr('style',styl_opisu)
divramka5:wikitext(wzor_opisu)
divramka:node(divramka5)
else
local divramka5=mw.html.create('div');
divramka5:attr('style',styl_alternatywy_opisu);
divramka:node(divramka5)
end;
end;
if(not czy_pozycja_numeracji_prawa)then
uchwyt_fun();
else
pole_odstepu_fun();
end;
opis_fun(opis2,styl_opisu_2,wzor_opisu_2,styl_alternatywy_opisu_2);
local divramka4=mw.html.create('div');
divramka4:attr('class',klasa_wzoru);
divramka4:attr('style',styl_wzoru);
divramka4:wikitext(wzor);
divramka:node(divramka4);
opis_fun(opis,styl_opisu,wzor_opisu,styl_alternatywy_opisu);
if(czy_pozycja_numeracji_prawa)then
uchwyt_fun();
else
pole_odstepu_fun();
end;
return tostring(divramka:allDone());
end;
local rysunek=function(uchwyt,numeracja,opis, rysunek, pozycja,rozmiar,klasa,styl,bez_automatu)
local divramka=mw.html.create('div');
divramka:attr('class',klasa);
divramka:attr('style',styl);
local czy_uchwyt=parametry_modul.CzyTak(uchwyt);
if(czy_uchwyt)then
if(numeracja)then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',"rysunek_"..uchwyt);
else
divramka:attr('id',"rysunek_"..numeracja);
end;
else
divramka:attr('id',"rysunek_"..uchwyt);
end;
end;
local czy_opis=parametry_modul.CzyTak(opis);
local wywolanie_rysunku="[[File:"..((rysunek)and rysunek or "Przykładowy rysunek.svg").."|thumb|"..(pozycja or "right").."|"..(rozmiar or "200px")..((czy_uchwyt or czy_opis)and ("|"..((parametry_modul.CzyTak(uchwyt))and "(Rys. "..((numeracja)and (parametry_modul.CzyTak(bez_automatu) and uchwyt or numeracja) or "Niedopasowany uchwyt: "..uchwyt)..")" or "").." "..opis) or "").."]]";
divramka:wikitext(wywolanie_rysunku);
return tostring(divramka:allDone());
end;
local wypowiedzenie = function(uchwyt,przedrostek,numeracja,klasa,styl,przedrostek2,rodzaj,kogo,czego,jakie,styl_naglowka,styl_tekstu,tekst,bez_automatu)
local divramka=mw.html.create('div');
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
divramka:attr('id',przedrostek.."_"..uchwyt);
else
divramka:attr('id',przedrostek.."_"..(numeracja or uchwyt));
end;
end;
divramka:attr('class',klasa);
divramka:attr('style',styl);
local wikitext="";
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
wikitext="("..przedrostek2.." "..uchwyt..")";
else
if(numeracja)then
wikitext="("..przedrostek2.." "..numeracja..")";
else
wikitext="("..przedrostek2.." Niedopawany uchwyt: "..uchwyt..")";
end;
end;
end;
if(parametry_modul.CzyTak(styl_naglowka))then
local spanramka=mw.html.create('span');
spanramka:attr('style',styl_naglowka);
spanramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
divramka:node(spanramka);
else
divramka:wikitext(rodzaj.." "..kogo.." "..czego.." "..jakie.." "..wikitext);
end;
divramka:wikitext('<BR>');
if(parametry_modul.CzyTak(styl_tekstu))then
local spanramka=mw.html.create('span');
spanramka:attr('style',styl_tekstu);
spanramka:wikitext(tekst);
divramka:node(spanramka);
else
divramka:wikitext(tekst);
end;
return tostring(divramka:allDone());
end;
local punkty = function(uchwyt,numeracja,przedrostek_id,klasa,styl,prefiks,bez_automatu)
local spanramka=mw.html.create('sup');
spanramka:attr('style',klasa);
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
spanramka:attr('id',przedrostek_id.."_"..uchwyt);
else
if(parametry_modul.CzyTak(numeracja))then
spanramka:attr('id',przedrostek_id.."_"..numeracja);
else
spanramka:attr('id',przedrostek_id.."_"..uchwyt);
end;
end;
end;
spanramka:attr('style',styl);
local smallramka=mw.html.create('small');
if(parametry_modul.CzyTak(uchwyt))then
if(parametry_modul.CzyTak(bez_automatu))then
smallramka:wikitext(prefiks..": "..uchwyt);
else
if(parametry_modul.CzyTak(numeracja))then
smallramka:wikitext('['..prefiks..": "..numeracja..']');
else
smallramka:wikitext('['..prefiks..": Niedopsowany uchwyt: "..uchwyt..']');
end;
end;
else
smallramka:wikitext('['..prefiks..": Niedopasowany uchwyt: brak uchwytu]");
end;
spanramka:node(smallramka);
return tostring(spanramka:allDone());
end;
local nazwa_strony_fun=function(nazwa_strony)
if((tabela_listy_danych_analizy_ksiazki.nazwa_przestrzeni==nazwa_przestrzeni)
and(tabela_listy_danych_analizy_ksiazki.nazwa_ksiazki==nazwa_ksiazki)
and (tabela_listy_danych_analizy_ksiazki.nazwa_artykulu==nazwa_artykulu))then
return "";
end;
return nazwa_strony;
end;
if(parametry_modul.CzyTak(frame.args["bez automatu"]))then
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
if(uchwyt_obiektu)then
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"]..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
else
return "("..link(nazwa_strony.."#"..frame.args["id"].."_".."Nieznany uchwyt",frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
end;
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,uchwyt_obiektu,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,uchwyt_obiektu,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],uchwyt_obiektu,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,uchwyt_obiektu,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return uchwyt_obiektu;
end;
else
return uchwyt_obiektu;
end;
end;
local tabela_listy_uchwytow_i_numeracji_na_stronie;
if(czy_aktualna_strona==nil)then
local dane_analizy_artykulu=tabela_listy_danych_analizy_ksiazki.dane_analizy_artykulu;
if(dane_analizy_artykulu)then
local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni=dane_analizy_artykulu[nazwa_przestrzeni];
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni)then
local tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazkach_w_danej_przestrzeni[nazwa_ksiazki];
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
if(lista_artykolow)then
local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
if(tabela_listy_analizy_na_stronie)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
end;
end;
end;
end;
end;
elseif(czy_aktualna_strona==1)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_danych_analizy_ksiazki.tablica_aktualnego_artykolu;
if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_na_stronie,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
elseif(czy_aktualna_strona==2)then
tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce=tabela_listy_danych_analizy_ksiazki.tablica_aktualnej_ksiazki;
if(not parametry_modul.CzyTak{[1]=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce,})then
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
if(tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce)then
local lista_artykolow=tabela_listy_uchwytow_i_numeracji_obiektow_w_ksiazce.lista_artykolow;
if(lista_artykolow)then
local tabela_listy_analizy_na_stronie=lista_artykolow[nazwa_artykulu]
if(tabela_listy_analizy_na_stronie)then
tabela_listy_uchwytow_i_numeracji_na_stronie=tabela_listy_analizy_na_stronie.uchwyty_i_numeracje;
end;
end;
end;
end;
if(tabela_listy_uchwytow_i_numeracji_na_stronie)then
local spis_uchwytow=tabela_listy_uchwytow_i_numeracji_na_stronie[nazwa_obiektu];
if(spis_uchwytow)then
if((uchwyt_obiektu)and(uchwyt_obiektu~=""))then
for _, dany_artykul in ipairs(spis_uchwytow)do
if(dany_artykul[1]==uchwyt_obiektu)then
if(nazwa_obiektu~="Śródtytuł")then
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
if(not dany_artykul[2])then
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..uchwyt_obiektu,frame.args["klasa"],frame.args["styl"])..")";
end;
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..dany_artykul[2],frame.args["przedrostek"]..dany_artykul[2],frame.args["klasa"],frame.args["styl"])..")";
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,dany_artykul[2],frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,dany_artykul[2],frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],dany_artykul[2],frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,dany_artykul[2],frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
end;
else
return ((dany_artykul[2])and dany_artykul[2] or "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"));
end;
else
if(dany_artykul[2])then
local tytul_szablonu=frame.args["nazwa szablonu"] or techniczne_modul.NazwaSzablonu(frame:getParent():getTitle());
if(tytul_szablonu=="LinkŚródtytuł")then
return link(dany_artykul[2][1],dany_artykul[2][2],frame.args["klasa"],frame.args["styl"])
elseif(tytul_szablonu=="LinkŚródtytułTutaj")then
return link(dany_artykul[2][1],"tutaj",frame.args["klasa"],frame.args["styl"])
end;
end;
end;
end;
end;
end;
end;
end;
if(frame.args["obiekt"])then
if(frame.args["obiekt"]=="link")then
local nazwa_strony=nazwa_strony_fun(nazwa_strony);
return "("..link(nazwa_strony.."#"..frame.args["id"].."_"..uchwyt_obiektu,frame.args["przedrostek"].."Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu"),frame.args["klasa"],frame.args["styl"])..")";
elseif(frame.args["obiekt"]=="wzór")then
return wzor(uchwyt_obiektu,nil,frame.args["styl główny"],frame.args["styl odstępu"],frame.args["pole odstępu"],frame.args["styl wzoru"],frame.args["klasa wzoru"],frame.args["wzór"],frame.args["opis"],frame.args["opis 2"],frame.args["klasa opisu"],frame.args["styl opisu"],frame.args["styl opisu 2"],frame.args["wzór opisu"],frame.args["wzór opisu 2"],frame.args["styl alternatywy opisu"],frame.args["styl alternatywy opisu 2"],frame.args["pozycja numeracji"],frame.args["klasa numeracji"],frame.args["styl numeracji"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="rysunek")then
return rysunek(uchwyt_obiektu,nil,frame.args["opis"],frame.args["rysunek"],frame.args["pozycja"],frame.args["rozmiar"],frame.args["klasa"],frame.args["styl"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="wypowiedzenie")then
return wypowiedzenie(uchwyt_obiektu,frame.args["przedrostek id"],nil,frame.args["klasa"],frame.args["styl"],frame.args["przedrostek numeracji"],frame.args["rodzaj"],frame.args["kogo"],frame.args["czego"],frame.args["jakie"],frame.args["styl nagłówka"],frame.args["styl tekstu"],frame.args["tekst"],frame.args["bez automatu"]);
elseif(frame.args["obiekt"]=="punkt")then
return punkty(uchwyt_obiektu,nil,frame.args["przedrostek_id"],frame.args["klasa"],frame.args["styl"],frame.args["prefiks"],frame.args["bez automatu"]);
else
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
else
return "Niedopasowany uchwyt: "..((parametry_modul.CzyTak(uchwyt_obiektu))and uchwyt_obiektu or "brak uchwytu");
end;
end;
return p;
r5njd8qtl17ssg2v4qznnwgsqaysofs
Szablon:RamkaNawigacja/opis
10
58214
439014
415568
2022-08-28T21:18:15Z
Persino
2851
/* Przykład */
wikitext
text/x-wiki
{{Podstrona dokumentacji}}
<!-- DODAWAJ KATEGORIE NA DOLE STRONY -->
== Opis ==
Szablon do umieszczenia na stronach artykułów w podręcznikach. Szablon do umieszczenia na przestrzeniach nazw {{Np|(main)|link=tak}}, {{Np|Wikijunior|link=tak}}, {{linkSzablon2|Brudnopis}} (podręczniki brudnopisu projektu o nazwie według schematu: {{Code|{{LinkSzablon2|Brudnopis}}/<nazwa użytkownika>/<nazwa książki>/<nazwa artykułu>}}) w przestrzeni nazw {{Np|Project|link=tak}}, i {{Np|User|link=tak}} (podręczniki o nazwie według schematu: {{Code|{{Np|User|link=tak}}:<nazwa użytkownika>/<nazwa książki>/<nazwa artykułu>}}).
== Użycie ==
{{Pre|{{s|RamkaNawigacja|podręcznik{{=}}|poprzedni{{=}}|obecny{{=}}|następny{{=}}}}}}
== Opis parametrów ==
; Parametry
* {{Code|podręcznik}} - nazwa (adres) podręcznika z przestrzenią nazw,
* {{Code|poprzedni}} - nazwa artykułu poprzedniego w stosunku do aktualnego bieżącego artykułu,
* {{Code|obecny}} - nazwa obecnego artykułu,
* {{Code|następny}} - nazwa artykułu następnego w stosunku do aktualnego oglądanego artykułu.
== Przykład ==
----
; Przykład - w pierwszym artykule podręcznika
----
{{Pre|
{{s|UnikatowaStronaStart}}
{{s|Lorem ipsum|3}}
{{s|RamkaNawigacja
| podręcznik {{=}} {{AktualnaKsiążka|nazwa przestrzeni nazw=(main)|nazwa jednostki=Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych}}
| poprzedni {{=}} {{PoprzedniArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = {{AktualnaKsiążka
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}/{{PierwszyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
}}
| obecny {{=}} {{PierwszyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
| następny {{=}} {{NastępnyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = {{AktualnaKsiążka
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}/{{PierwszyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
}}
}}
{{s|UnikatowaStronaKoniec}}
}}
----
; Wynik
{{UnikatowaStronaStart}}
{{Lorem ipsum|3}}
{{RamkaNawigacja
| podręcznik = {{AktualnaKsiążka|nazwa przestrzeni nazw=(main)|nazwa jednostki=Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych}}
| poprzedni = {{PoprzedniArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = {{AktualnaKsiążka
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}/{{PierwszyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
}}
| obecny = {{PierwszyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
| następny = {{NastępnyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = {{AktualnaKsiążka
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}/{{PierwszyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
}}
}}
{{UnikatowaStronaKoniec}}
----
----
; Przykład - pomiędzy pierwszym a ostatnim artykułem podręcznika
----
{{Pre|
{{s|UnikatowaStronaStart}}
{{s|Lorem ipsum|3}}
{{s|RamkaNawigacja
| podręcznik {{=}} {{AktualnaKsiążka|nazwa przestrzeni nazw=(main)|nazwa jednostki=Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych}}
| poprzedni {{=}} {{PoprzedniArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = {{AktualnaKsiążka
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}/{{PomiędzyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
}}
| obecny {{=}} {{PomiędzyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
| następny {{=}} {{NastępnyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = {{AktualnaKsiążka
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}/{{PomiędzyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
}}
}}
{{s|UnikatowaStronaKoniec}}
}}
----
; Wynik
{{UnikatowaStronaStart}}
{{Lorem ipsum|3}}
{{RamkaNawigacja
| podręcznik = {{AktualnaKsiążka|nazwa przestrzeni nazw=(main)|nazwa jednostki=Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych}}
| poprzedni = {{PoprzedniArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = {{AktualnaKsiążka
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}/{{PomiędzyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
}}
| obecny = {{PomiędzyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
| następny = {{NastępnyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = {{AktualnaKsiążka
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}/{{PomiędzyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
}}
}}
{{UnikatowaStronaKoniec}}
----
----
; Przykład - w ostatnim artykule podręcznika
----
{{Pre|
{{s|UnikatowaStronaStart}}
{{s|Lorem ipsum|3}}
{{s|RamkaNawigacja
| podręcznik {{=}} {{AktualnaKsiążka|nazwa przestrzeni nazw=(main)|nazwa jednostki=Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych}}
| poprzedni {{=}} {{PoprzedniArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = {{AktualnaKsiążka
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}/{{OstatniArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
}}
| obecny {{=}} {{OstatniArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
| następny {{=}} {{NastępnyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = {{AktualnaKsiążka
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}/{{OstatniArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
}}
}}
{{s|UnikatowaStronaKoniec}}
}}
----
; Wynik
{{UnikatowaStronaStart}}
{{Lorem ipsum|3}}
{{RamkaNawigacja
| podręcznik = {{AktualnaKsiążka|nazwa przestrzeni nazw=(main)|nazwa jednostki=Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych}}
| poprzedni = {{PoprzedniArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = {{AktualnaKsiążka
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}/{{OstatniArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
}}
| obecny = {{OstatniArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
| następny = {{NastępnyArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = {{AktualnaKsiążka
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}/{{OstatniArtykuł
| nazwa przestrzeni nazw = (main)
| nazwa jednostki = Metody matematyczne fizyki/Wprowadzenie do wielomianów ortogonalnych
}}
}}
}}
{{UnikatowaStronaKoniec}}
== Błędy ==
Błędy należy zgłaszać na stronie {{Kwestie techniczne}}.
== Parametry szablonu ({{Strukturyzacja Wizualnego Edytora}}) ==
<templatedata>
{
"params": {
"podręcznik": {
"description": "Nazwa podręcznika.",
"type": "wiki-page-name",
"required": true
},
"poprzedni": {
"description": "Nazwa poprzedniego artykułu w stosunku do aktualnego artykułu.",
"type": "wiki-page-name",
"suggested": true
},
"obecny": {
"description": "Nazwa aktualnego artykułu.",
"type": "wiki-page-name",
"required": true
},
"następny": {
"description": "Nazwa następnego artykułu w stosunku do aktualnego artykułu.",
"type": "wiki-page-name",
"suggested": true
}
},
"description": "Szablon do umieszczenia na górze strony artykułu."
}
</templatedata>
== Zobacz też ==
; Inne szablony nawigacyjne
* A także inny szablon dotyczący nawigacji: {{s|NawigacjaG}} (szablon na górze) i {{s|Nawigacja}} (szablon na dole), {{s|Kreska nawigacja}} (szablon na dole artykułu podręcznika), {{s|OzdobnaNawigacja}} (szablon umieszczany na górze i dole artykułu podręcznika), {{s|RamkaNawigacja}} (szablon umieszczany na górze lub dole podręcznika) oraz {{s|Prognav}} (szablon na początku, pomiędzy i ewentualnie na końcu w nawigacji artykułów podręcznika) i {{s|Prognavend}} (szablon na końcowym artykule książki w nawigacji artykułów podręcznika) i również {{s|Prognaw}} (szablon na początku, pomiędzy lub końcu w nawigacji artykułów podręcznika).
; Szablony potrzebne do tego szablonu nawigacji
* {{s|AktualnaKsiążka}} - aktualna nazwa strony głównej książki,
* {{s|PoprzedniArtykuł}} - poprzedni artykuł w stosunku do aktualnego artykułu książki,
* {{s|NazwaAktualnyArtykuł}} - nazwa aktualnego artykułu,
* {{s|NastępnyArtykuł}} - następny artykuł w stosunku do bieżącego artykułu.
{{BrClear}}
<includeonly><!--
++++ DODAWAJ KATEGORIE PONIŻEJ TEJ LINII -->
{{Kategoria|Szablony nawigacyjne - nawigacja}}
</includeonly>
eojn3etonffmu7873vdv490xy3fcwkh
Szablon:UnikalnaStronaStart
10
58310
439027
430818
2022-08-29T08:24:22Z
Persino
2851
wikitext
text/x-wiki
<includeonly>{{StronaStart
| nazwa przestrzeni nazw = {{{nazwa przestrzeni nazw|{{NAMESPACE}}}}}
| nazwa jednostki = {{{nazwa jednostki|{{PAGENAME}}}}}
| typ jednostki = {{{typ jednostki|}}}
| formatowanie = tak
| limit = {{{limit|}}}
<!-- Parametry dodatkowe -->
| wstęp = {{{wstęp|}}}
| zakończenie = {{{zakończenie|}}}
| nagłówek = {{{nagłówek|}}}
| stopka = {{{stopka|}}}
| nagłówek strony = {{{nagłówek strony|}}}
| stopka strony = {{{stopka strony|}}}
| nagłówek lewy = {{{nagłówek lewy|}}}
| stopka lewa = {{{stopka lewa|}}}
| nagłówek prawy = {{{nagłówek prawy|}}}
| stopka prawa = {{{stopka prawa|}}}<!--
Nagłówki i stopki - koniec
-->}}</includeonly><noinclude>{{Dokumentacja}}</noinclude>
6ku1isu0samsnau7a8iy69lsdrbxw1m
Wikipedysta:Persino/Gadget-StronicowyParser.js/AktualizacjaStron.js
2
58541
438980
434848
2022-08-28T12:24:57Z
Persino
2851
javascript
text/javascript
StronicowyParser.AktualizacjaStron=function(fullname,kategoria_pozycji){
this.fullname=((!fullname)?(StronicowyParser.pageinfo.fullname.replace(/[_\s]+/g," ")):fullname);
this.tabcat=undefined;
this.kategoria_pozycji=((!kategoria_pozycji)?('Strony z błędami skryptów'):kategoria_pozycji);
this.prefix_kategorii_pozycji="Kategoria:";
this.muteks_aktualizacja_stron=new StronicowyParser.Muteks();
this.strona_aktualna=undefined;
this.strona_aktualna_powtarzanie=undefined;
this.PustaEdycjaStrony=async function(title){
let params={
action: 'edit',
title: title,
appendtext: '',
nocreate: true,
format: 'json',
smaxage: 600,
maxage: 600,
prop: 'info|revisions',
};
await StronicowyParser.api.ZadaniaApi(params,'csrf').then((data)=>{console.log("Udało się zaaktualizować stronę: "+title);}).catch((data)=>{console.log("Nie udało się zaaktualizować strony: "+title,"Kod błędu: "+data);});
};
this.OdswiezanieStrony=async function(title){
await StronicowyParser.api.ZadaniaApi({
action: 'purge',
titles: title,
format: 'json',
smaxage: 600,
maxage: 600,
prop: 'info|revisions',
}).then((data)=>{console.log("Udało się odświeżyć stronę: "+title);}).catch((data)=>{console.log("Nie udało się odświeżyć strony: "+title,"Kod błędu: "+data);});
};
this.PustaEdycjaIOdswiezanieStrony=async function(title){
setTimeout(function(){this.PustaEdycjaStrony(title);},0);
setTimeout(function(){this.OdswiezanieStrony(title);},3000);
};
this.AktualizacjaCzlonkowKategorii=async function(kategoria){
let tab_promise=new Array();
let this_zmienne=this;
let czy_tak=null;
await StronicowyParser.api.ZadaniaApi({
action: 'query',
list: 'categorymembers',
cmtitle: kategoria,
cmtype: 'file|page|subcat',
cmlimit: 500,
format: 'json',
smaxage: 600,
maxage: 600,
}).then(function(data){
let category = data.query.categorymembers;
for (let cat in category){
czy_tak=true;
let title=category[cat].title;
if(title==this_zmienne.fullname){
const promise_aktualna=(async function(){
await this_zmienne.muteks_aktualizacja_stron.zablokuj();
if((!this_zmienne.strona_aktualna)||(this_zmienne.strona_aktualna_powtarzanie)){
this_zmienne.tabcat=this_zmienne.tabcat||await StronicowyParser.kategorie.StworzTabliceKategoriiZCatLinks();
let czy_istnieje_blad=this_zmienne.tabcat[this_zmienne.kategoria_pozycji];
if(czy_istnieje_blad){
await this_zmienne.PustaEdycjaIOdswiezanieStrony(title);
if(document.querySelector('body.action-view')){
window.location.reload(true);
}
this_zmienne.this_zmienne.tabcat=undefined;
}
this_zmienne.strona_aktualna=true;
}
this_zmienne.muteks_aktualizacja_stron.odblokuj();
})();
tab_promise.push(promise_aktualna);
continue;
}
const promise=this_zmienne.PustaEdycjaIOdswiezanieStrony(title);
tab_promise.push(promise);
}
}).catch((data)=>{});
if(tab_promise.length>0){
await Promise.all(tab_promise).then(()=>{}).catch(()=>{});
}
return czy_tak;
};
this.AktualizacjaAktualnejStrony=async function(){
let czy_tak=null;
let wlasciwe=document.querySelector(":root > body:not(.ns-special)");
if(wlasciwe!==null){
let aktualizacja_strony=document.querySelector('#mw-content-text .mw-parser-output .aktualizacja_strony');
if(aktualizacja_strony!==null){
await this.PustaEdycjaIOdswiezanieStrony(this.fullname);
}else{
await this.muteks_aktualizacja_stron.zablokuj();
if(!this.strona_aktualna){
this.tabcat=this.tabcat||await StronicowyParser.kategorie.StworzTabliceKategoriiZCatLinks();
if(this.tabcat[this.kategoria_pozycji]){
await this.PustaEdycjaIOdswiezanieStrony(this.fullname);
czy_tak=true;
if(document.querySelector(':root > body.action-view:not(.ns-special)')){
window.location.reload(true);
}
this.tabcat=undefined;
}
this.strona_aktualna=true;
}
this.muteks_aktualizacja_stron.odblokuj();
}
}
return czy_tak;
};
this.PowtarzanieAktualizacji=async function(){
this.strona_aktualna_powtarzanie=true;
let aktualizacja_strony_nie_powtarzanie=document.querySelector('#mw-content-text .mw-parser-output .aktualizacja_strony_nie_powtarzanie');
if(!this.aktualizacja_strony_nie_powtarzanie){
let this_zmienne=this;
let pelna_nazwa_pozycji=this.prefix_kategorii_pozycji+this.kategoria_pozycji;
setInterval(async function(){
await this_zmienne.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
let czy_tak=await this_zmienne.AktualizacjaCzlonkowKategorii(pelna_nazwa_pozycji);
if(czy_tak){
await this_zmienne.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
}
}, 1000*60*10);
}
};
this.AktualizacjaStronyAktualnejIStronyKategorii=async function(){
let pelna_nazwa_pozycji=this.prefix_kategorii_pozycji+this.kategoria_pozycji;
if(pelna_nazwa_pozycji!=this.fullname){
await this.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
const promise1=this.AktualizacjaAktualnejStrony();
const promise2=this.AktualizacjaCzlonkowKategorii(pelna_nazwa_pozycji);
let czy_tak=null;
await Promise.all([promise1,promise2]).then((dane)=>{czy_tak=dane[0]||dane[1];}).catch(()=>{});
if(czy_tak){
await this.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
}
}else{
await this.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
let czy_tak=await this.AktualizacjaCzlonkowKategorii(pelna_nazwa_pozycji);
if(czy_tak){
await this.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
}
}
};
};
StronicowyParser.aktualizacja=new StronicowyParser.AktualizacjaStron();
StronicowyParser.aktualizacja.AktualizacjaStronyAktualnejIStronyKategorii();
StronicowyParser.aktualizacja.PowtarzanieAktualizacji();
ael10mmjb0jsphvd90cv24eq2xbi9s0
438981
438980
2022-08-28T12:25:35Z
Persino
2851
javascript
text/javascript
StronicowyParser.AktualizacjaStron=function(fullname,kategoria_pozycji){
this.fullname=((!fullname)?(StronicowyParser.pageinfo.fullname.replace(/[_\s]+/g," ")):fullname);
this.tabcat=undefined;
this.kategoria_pozycji=((!kategoria_pozycji)?('Strony z błędami skryptów'):kategoria_pozycji);
this.prefix_kategorii_pozycji="Kategoria:";
this.muteks_aktualizacja_stron=new StronicowyParser.Muteks();
this.strona_aktualna=undefined;
this.strona_aktualna_powtarzanie=undefined;
this.PustaEdycjaStrony=async function(title){
let params={
action: 'edit',
title: title,
appendtext: '',
nocreate: true,
format: 'json',
smaxage: 600,
maxage: 600,
prop: 'info|revisions',
};
await StronicowyParser.api.ZadaniaApi(params,'csrf').then((data)=>{console.log("Udało się zaaktualizować stronę: "+title);}).catch((data)=>{console.log("Nie udało się zaaktualizować strony: "+title,"Kod błędu: "+data);});
};
this.OdswiezanieStrony=async function(title){
await StronicowyParser.api.ZadaniaApi({
action: 'purge',
titles: title,
format: 'json',
smaxage: 600,
maxage: 600,
prop: 'info|revisions',
}).then((data)=>{console.log("Udało się odświeżyć stronę: "+title);}).catch((data)=>{console.log("Nie udało się odświeżyć strony: "+title,"Kod błędu: "+data);});
};
this.PustaEdycjaIOdswiezanieStrony=async function(title){
setTimeout(async function(){this.PustaEdycjaStrony(title);},0);
setTimeout(async function(){this.OdswiezanieStrony(title);},3000);
};
this.AktualizacjaCzlonkowKategorii=async function(kategoria){
let tab_promise=new Array();
let this_zmienne=this;
let czy_tak=null;
await StronicowyParser.api.ZadaniaApi({
action: 'query',
list: 'categorymembers',
cmtitle: kategoria,
cmtype: 'file|page|subcat',
cmlimit: 500,
format: 'json',
smaxage: 600,
maxage: 600,
}).then(function(data){
let category = data.query.categorymembers;
for (let cat in category){
czy_tak=true;
let title=category[cat].title;
if(title==this_zmienne.fullname){
const promise_aktualna=(async function(){
await this_zmienne.muteks_aktualizacja_stron.zablokuj();
if((!this_zmienne.strona_aktualna)||(this_zmienne.strona_aktualna_powtarzanie)){
this_zmienne.tabcat=this_zmienne.tabcat||await StronicowyParser.kategorie.StworzTabliceKategoriiZCatLinks();
let czy_istnieje_blad=this_zmienne.tabcat[this_zmienne.kategoria_pozycji];
if(czy_istnieje_blad){
await this_zmienne.PustaEdycjaIOdswiezanieStrony(title);
if(document.querySelector('body.action-view')){
window.location.reload(true);
}
this_zmienne.this_zmienne.tabcat=undefined;
}
this_zmienne.strona_aktualna=true;
}
this_zmienne.muteks_aktualizacja_stron.odblokuj();
})();
tab_promise.push(promise_aktualna);
continue;
}
const promise=this_zmienne.PustaEdycjaIOdswiezanieStrony(title);
tab_promise.push(promise);
}
}).catch((data)=>{});
if(tab_promise.length>0){
await Promise.all(tab_promise).then(()=>{}).catch(()=>{});
}
return czy_tak;
};
this.AktualizacjaAktualnejStrony=async function(){
let czy_tak=null;
let wlasciwe=document.querySelector(":root > body:not(.ns-special)");
if(wlasciwe!==null){
let aktualizacja_strony=document.querySelector('#mw-content-text .mw-parser-output .aktualizacja_strony');
if(aktualizacja_strony!==null){
await this.PustaEdycjaIOdswiezanieStrony(this.fullname);
}else{
await this.muteks_aktualizacja_stron.zablokuj();
if(!this.strona_aktualna){
this.tabcat=this.tabcat||await StronicowyParser.kategorie.StworzTabliceKategoriiZCatLinks();
if(this.tabcat[this.kategoria_pozycji]){
await this.PustaEdycjaIOdswiezanieStrony(this.fullname);
czy_tak=true;
if(document.querySelector(':root > body.action-view:not(.ns-special)')){
window.location.reload(true);
}
this.tabcat=undefined;
}
this.strona_aktualna=true;
}
this.muteks_aktualizacja_stron.odblokuj();
}
}
return czy_tak;
};
this.PowtarzanieAktualizacji=async function(){
this.strona_aktualna_powtarzanie=true;
let aktualizacja_strony_nie_powtarzanie=document.querySelector('#mw-content-text .mw-parser-output .aktualizacja_strony_nie_powtarzanie');
if(!this.aktualizacja_strony_nie_powtarzanie){
let this_zmienne=this;
let pelna_nazwa_pozycji=this.prefix_kategorii_pozycji+this.kategoria_pozycji;
setInterval(async function(){
await this_zmienne.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
let czy_tak=await this_zmienne.AktualizacjaCzlonkowKategorii(pelna_nazwa_pozycji);
if(czy_tak){
await this_zmienne.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
}
}, 1000*60*10);
}
};
this.AktualizacjaStronyAktualnejIStronyKategorii=async function(){
let pelna_nazwa_pozycji=this.prefix_kategorii_pozycji+this.kategoria_pozycji;
if(pelna_nazwa_pozycji!=this.fullname){
await this.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
const promise1=this.AktualizacjaAktualnejStrony();
const promise2=this.AktualizacjaCzlonkowKategorii(pelna_nazwa_pozycji);
let czy_tak=null;
await Promise.all([promise1,promise2]).then((dane)=>{czy_tak=dane[0]||dane[1];}).catch(()=>{});
if(czy_tak){
await this.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
}
}else{
await this.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
let czy_tak=await this.AktualizacjaCzlonkowKategorii(pelna_nazwa_pozycji);
if(czy_tak){
await this.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
}
}
};
};
StronicowyParser.aktualizacja=new StronicowyParser.AktualizacjaStron();
StronicowyParser.aktualizacja.AktualizacjaStronyAktualnejIStronyKategorii();
StronicowyParser.aktualizacja.PowtarzanieAktualizacji();
geayz39atk2u7b9xhshuyv348dpwyd2
438982
438981
2022-08-28T12:26:55Z
Persino
2851
javascript
text/javascript
StronicowyParser.AktualizacjaStron=function(fullname,kategoria_pozycji){
this.fullname=((!fullname)?(StronicowyParser.pageinfo.fullname.replace(/[_\s]+/g," ")):fullname);
this.tabcat=undefined;
this.kategoria_pozycji=((!kategoria_pozycji)?('Strony z błędami skryptów'):kategoria_pozycji);
this.prefix_kategorii_pozycji="Kategoria:";
this.muteks_aktualizacja_stron=new StronicowyParser.Muteks();
this.strona_aktualna=undefined;
this.strona_aktualna_powtarzanie=undefined;
this.PustaEdycjaStrony=async function(title){
let params={
action: 'edit',
title: title,
appendtext: '',
nocreate: true,
format: 'json',
smaxage: 600,
maxage: 600,
prop: 'info|revisions',
};
await StronicowyParser.api.ZadaniaApi(params,'csrf').then((data)=>{console.log("Udało się zaaktualizować stronę: "+title);}).catch((data)=>{console.log("Nie udało się zaaktualizować strony: "+title,"Kod błędu: "+data);});
};
this.OdswiezanieStrony=async function(title){
await StronicowyParser.api.ZadaniaApi({
action: 'purge',
titles: title,
format: 'json',
smaxage: 600,
maxage: 600,
prop: 'info|revisions',
}).then((data)=>{console.log("Udało się odświeżyć stronę: "+title);}).catch((data)=>{console.log("Nie udało się odświeżyć strony: "+title,"Kod błędu: "+data);});
};
this.PustaEdycjaIOdswiezanieStrony=async function(title){
let zmienna_this=this;
setTimeout(async function(){zmienna_this.PustaEdycjaStrony(title);},0);
setTimeout(async function(){zmienna_this.OdswiezanieStrony(title);},3000);
};
this.AktualizacjaCzlonkowKategorii=async function(kategoria){
let tab_promise=new Array();
let this_zmienne=this;
let czy_tak=null;
await StronicowyParser.api.ZadaniaApi({
action: 'query',
list: 'categorymembers',
cmtitle: kategoria,
cmtype: 'file|page|subcat',
cmlimit: 500,
format: 'json',
smaxage: 600,
maxage: 600,
}).then(function(data){
let category = data.query.categorymembers;
for (let cat in category){
czy_tak=true;
let title=category[cat].title;
if(title==this_zmienne.fullname){
const promise_aktualna=(async function(){
await this_zmienne.muteks_aktualizacja_stron.zablokuj();
if((!this_zmienne.strona_aktualna)||(this_zmienne.strona_aktualna_powtarzanie)){
this_zmienne.tabcat=this_zmienne.tabcat||await StronicowyParser.kategorie.StworzTabliceKategoriiZCatLinks();
let czy_istnieje_blad=this_zmienne.tabcat[this_zmienne.kategoria_pozycji];
if(czy_istnieje_blad){
await this_zmienne.PustaEdycjaIOdswiezanieStrony(title);
if(document.querySelector('body.action-view')){
window.location.reload(true);
}
this_zmienne.this_zmienne.tabcat=undefined;
}
this_zmienne.strona_aktualna=true;
}
this_zmienne.muteks_aktualizacja_stron.odblokuj();
})();
tab_promise.push(promise_aktualna);
continue;
}
const promise=this_zmienne.PustaEdycjaIOdswiezanieStrony(title);
tab_promise.push(promise);
}
}).catch((data)=>{});
if(tab_promise.length>0){
await Promise.all(tab_promise).then(()=>{}).catch(()=>{});
}
return czy_tak;
};
this.AktualizacjaAktualnejStrony=async function(){
let czy_tak=null;
let wlasciwe=document.querySelector(":root > body:not(.ns-special)");
if(wlasciwe!==null){
let aktualizacja_strony=document.querySelector('#mw-content-text .mw-parser-output .aktualizacja_strony');
if(aktualizacja_strony!==null){
await this.PustaEdycjaIOdswiezanieStrony(this.fullname);
}else{
await this.muteks_aktualizacja_stron.zablokuj();
if(!this.strona_aktualna){
this.tabcat=this.tabcat||await StronicowyParser.kategorie.StworzTabliceKategoriiZCatLinks();
if(this.tabcat[this.kategoria_pozycji]){
await this.PustaEdycjaIOdswiezanieStrony(this.fullname);
czy_tak=true;
if(document.querySelector(':root > body.action-view:not(.ns-special)')){
window.location.reload(true);
}
this.tabcat=undefined;
}
this.strona_aktualna=true;
}
this.muteks_aktualizacja_stron.odblokuj();
}
}
return czy_tak;
};
this.PowtarzanieAktualizacji=async function(){
this.strona_aktualna_powtarzanie=true;
let aktualizacja_strony_nie_powtarzanie=document.querySelector('#mw-content-text .mw-parser-output .aktualizacja_strony_nie_powtarzanie');
if(!this.aktualizacja_strony_nie_powtarzanie){
let this_zmienne=this;
let pelna_nazwa_pozycji=this.prefix_kategorii_pozycji+this.kategoria_pozycji;
setInterval(async function(){
await this_zmienne.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
let czy_tak=await this_zmienne.AktualizacjaCzlonkowKategorii(pelna_nazwa_pozycji);
if(czy_tak){
await this_zmienne.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
}
}, 1000*60*10);
}
};
this.AktualizacjaStronyAktualnejIStronyKategorii=async function(){
let pelna_nazwa_pozycji=this.prefix_kategorii_pozycji+this.kategoria_pozycji;
if(pelna_nazwa_pozycji!=this.fullname){
await this.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
const promise1=this.AktualizacjaAktualnejStrony();
const promise2=this.AktualizacjaCzlonkowKategorii(pelna_nazwa_pozycji);
let czy_tak=null;
await Promise.all([promise1,promise2]).then((dane)=>{czy_tak=dane[0]||dane[1];}).catch(()=>{});
if(czy_tak){
await this.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
}
}else{
await this.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
let czy_tak=await this.AktualizacjaCzlonkowKategorii(pelna_nazwa_pozycji);
if(czy_tak){
await this.PustaEdycjaIOdswiezanieStrony(pelna_nazwa_pozycji);
}
}
};
};
StronicowyParser.aktualizacja=new StronicowyParser.AktualizacjaStron();
StronicowyParser.aktualizacja.AktualizacjaStronyAktualnejIStronyKategorii();
StronicowyParser.aktualizacja.PowtarzanieAktualizacji();
jw2on0h2ue4zfdr77i2n5nnad6yl1w7
Szablon:StronaStart/stronastart.css
10
58549
439018
437417
2022-08-29T05:48:35Z
Persino
2851
sanitized-css
text/css
.strona_prawa .spis{
display:flex;
width:100%;
}
.strona_prawa .spis > div:not(.pierwsza_strona){
height:auto;
max-height:100%;
}
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:first-child > th{
width:calc( 100% - 8px );
margin:0 4px;
}
.strona_prawa .spis > div:not(.pierwsza_strona){
height:auto;
max-height:100%;
width:auto;
display:flex !important;
box-sizing:border-box;
}
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści{
height:100%;
width:auto;
display:flex !important;
flex-direction:column;
box-sizing:border-box;
margin:0;
}
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody,
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr,
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td,
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{
display:flex;
flex-direction:column;
}
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:first-child{
height:20px;
}
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child{
height: calc( 100% - 20px );
}
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody,
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td,
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{
height:100%;
width:100%;
box-sizing:border-box;
}
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td > div.toc_spis ul,
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr:last-child > td > div.toc_spis li{
display:grid;
height:100%;
width:auto;
box-sizing:border-box;
}
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis{
padding:0 3px;
}
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis/*.mw-scrollbar-overflow-y*/{
height:100% !important;
max-height:100% !important;
/*width:100%;*/
max-width:694px;
}
.strona_prawa .mw-sticky-y.spis.mw-sticky-js.mw-scrollbar-overflow-x:not(:hover){
overflow-x:auto !important;
overflow-y:hidden !important;
}
html.client-nojs .strona_prawa,
html.client-nojs .strona_lewa{
overflow-x:auto !important;
overflow-y:hidden !important;
}
html.client-nojs .strona_prawa .mw-sticky-y.spis{
overflow:auto !important;
visibility:visible !important;
position:relative !important;
}
html.client-nojs .strona_prawa .mw-sticky-y.spis:hover{
width: 100% !important;
max-width:calc( 100% - 5px ) !important;
height:auto !important;
}
html.client-nojs .strona_prawa .mw-sticky-y.spis:not(:hover){
width:100% !important;
max-width:calc( (100% - 5px ) * 3.3333333 ) !important;
height:auto !important;
}
.strona_prawa .mw-sticky-y.spis:not(:hover){
transform: scale(0.3,0.3) translate(-117%,-117%);
/**/
transition: transform, max-width, width, max-height, height, right, left, top, bottom 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, right, left, top, bottom;
transition-duration: 500ms;
transition-timing-function: ease-out, linear;
transition-delay:4s;
}
.strona_prawa .mw-sticky-y.spis:hover{
max-width:700px !important;
transform: scale(1,1) translate(0,0);
transition: transform, max-width, width, max-height, height, right, left, top, bottom 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, right, left, top, bottom;
transition-duration: 500ms;
transition-timing-function: ease-out, linear;
transition-delay: 0s;
}
.strona_prawa .pierwsza_strona.mw-overflow-y.mw-scrollbar-overflow-y{
padding-right:10px;
}
.strona_prawa .pierwsza_strona .wikitable{
margin-top:5px;
margin-bottom:5px;
}
.strona_start{
background-color:white;
}
.strona_start .główna_strona.tło{
background-color:white;
background-image: url('//upload.wikimedia.org/wikipedia/commons/thumb/b/ba/Wikibooks_multicolor_open_book_no_text.svg/200px-Wikibooks_multicolor_open_book_no_text.svg.png');
}
html.client-nojs .strona_prawa .nawigacja_boksy,
html.client-nojs .strona_lewa .nawigacja_boksy{
margin-top:5px !important;
visibility:visible !important;
}
.strona_prawa .mw-optimal-x:hover,
.strona_lewa .mw-optimal-x:hover{
transform: scale(1,1) translate(0,0);
max-width:none !important;
transition: transform, max-width, width, max-height, height, right, left, top, bottom 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, right, left, top, bottom;
transition-duration: 500ms;
transition-timing-function: ease-out, linear;
transition-delay: 0s;
}
.strona_prawa .mw-optimal-x:not(:hover){
transform: scale(0.3,0.3) translate(117%,-117%);
}
.strona_lewa .mw-optimal-x:not(:hover){
transform: scale(0.3,0.3) translate(-117%,-117%);
}
.strona_prawa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover),
.strona_lewa .mw-optimal-x.mw-optimal-js.mw-scrollbar-overflow-x:not(:hover){
overflow:auto;
}
html.client-nojs .strona_prawa .mw-optimal-x,
html.client-nojs .strona_lewa .mw-optimal-x{
overflow:auto !important;
visibility:visible !important;
position:relative !important;
z-index:1 !important;
direction: rtl;
width: auto !important;
}
html.client-nojs .strona_prawa .mw-optimal-x:hover,
html.client-nojs .strona_lewa .mw-optimal-x:hover{
z-index:3 !important;
width:100% !important;
max-width:calc( 100% - 5px ) !important;
}
html.client-nojs .strona_prawa .mw-optimal-x:not(:hover),
html.client-nojs .strona_lewa .mw-optimal-x:not(:hover){
width: auto !important;
max-width: calc( (100% - 5px ) * 3.3333333 ) !important;
height: auto !important;
}
html.client-nojs .strona_prawa .mw-optimal-x:hover,
html.client-nojs .strona_lewa .mw-optimal-x:hover{
width:auto !important;
max-width:calc( 100% - 5px )!important;
}
.strona_prawa .mw-optimal-x:not(:hover),
.strona_lewa .mw-optimal-x:not(:hover){
transition: transform, max-width, width, max-height, height, right, left, top, bottom 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, right, left, top, bottom;
transition-duration: 500ms;
transition-timing-function: ease-out, linear;
transition-delay: 4s;
}
.strona_prawa .mw-optimal-x,
.strona_lewa .mw-optimal-x{
display:flex;
flex-direction:column;
}
.strona_start .strona .ciało_zawartości > .menu > .menu_boks:hover{
background-color:blue !important;
color:white !important;
}
.strona_start .strona .ciało_zawartości > .menu > .menu_boks:active{
background-color:grey !important;
color:white !important;
}
.strona_start .strona .ciało_zawartości > .menu > .menu_boks:not(:hover):not(:active){
background-color:white !important;
color:black !important;
}
.strona h1, .strona h2,.strona h3,.strona h4,.strona h5,.strona h6{
text-align:left;
}
.strona > .ciało_kontener > .ciało_strona > p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p) + p,
.strona > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).noprint + p{
margin-top:0.6em;
}
.strona > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type,
.strona > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type,
.strona > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type,
.strona > .ciało_kontener > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener > .ciało_strona > p:last-of-type{
margin-bottom:0;
}
@media print{
.noprint{
display:none;
}
.print{
display:block;
}
}
.gallerytext, .plainlinks{
text-align:left;
}
.strona.mw-scrollbar-overflow-x{
padding-bottom:5px;
}
.strona.mw-scrollbar-overflow-y{
padding-right:5px;
}
arlzn8fo2t0g9kre6ja39dp0lpjo1sh
Wikipedysta:Persino/common.js
2
58552
438990
437960
2022-08-28T18:44:01Z
Persino
2851
javascript
text/javascript
mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true );
/**/
/* Umieszczony tutaj kod JavaScript zostanie załadowany przez każdego użytkownika, podczas każdego ładowania strony.
*/
/*
* Zmienna Common.pageInfo, jego elementy, instrukcja obsługi:
* Common.pageInfo.namespace numer przestrzeni nazw (równe wgNamespaceNumber)
* Common.pageInfo.name pełna nazwa strony
* Common.pageInfo.title tytuł strony, czyli ostatnia część po '/' albo jest równe pageInfo.name, gdy nigdzie nie występuje slash
* Common.pageInfo.book tytuł książki
* Common.pageInfo.action akcja taka jaka jest w adresie URL pod "action=", w przypadku normalnego czytania strony, action jest równe "get"
* Common.pageInfo.diff null w przypadku, gdy nie porównujemy wersji, w przeciwnym wypadku wartość występującą w adresie URL
*/
/*Uzyskanie dostępu do tablicy - przestrzeni: Common, z innej strony .js*/
var Common_zmienna_z_MediaWiki_Wikibooks=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
/*Funkcja, by nie było przecieków pamięci*/
(function(Common_zmienna_z_MediaWiki_Wikibooks,Common){
/*Sprawdza, czy użytkownik ma własną zmienną Common*/
Common.IsUserCommon=function(){return ((Common_zmienna_z_MediaWiki_Wikibooks)?true:false);};
/*Funkcja zwraca zmienną Common ze strony MediaWiki:Common.js*/
Common.MediaWikiCommon=function(){return (Common.IsUserCommon()?Common_zmienna_z_MediaWiki_Wikibooks:Common);}
/*Funkcja zwraca tablicę Common użytkownika, jeżeli taką posiada, w przeciwnym wypadku zwraca undefined*/
Common.UserCommon=function(){return (Common.IsUserCommon()?Common:undefined);}
/*Funkcja zwraca Common z tej strony*/
Common.NoweCommon=function(){return Common;}
/*Funkcja zwraca Common ze strony MediaWiki:Common.js, jeżeli użytkownik posiada własne Common w jego pliku Common, w przeciwnym wypadku zwraca undefined*/
Common.StareCommon=function(){return Common_zmienna_z_MediaWiki_Wikibooks;}
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
/*Uruchamianie funkcji Common.LokowanieTopSelf*/
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen,tylko_odrejestruj){
/*
css - adres html obiektu,
zdarzenie - zdarzenie jak click,
funkcja_zdarzen - nazwa funkcji zdarzeń w starej przestrzeni Common lub nowej, jak StickyXY,
tylko_odrejestruj - czy tylko zdarzenie ma odrejestrować w starej przestrzeni Common.
*/
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((Common_zmienna_z_MediaWiki_Wikibooks)&&(Common_zmienna_z_MediaWiki_Wikibooks[funkcja_zdarzen])){
$(css).off(zdarzenie,Common_zmienna_z_MediaWiki_Wikibooks[funkcja_zdarzen]);
}
if((!tylko_odrejestruj)&&(Common)&&(Common[funkcja_zdarzen])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen]);
}
}
}
/*Funkcje w przestrzeni nazw Common*/
Common.Naglowek=function(){
/* Skrypt odpowiedzialny za wyświetlanie szablonu Nagłówek [[Szablon:Nagłówek]] */
var hideAll = document.getElementById('mójNagłówekUkryj');
var noFooter = false;
var footers = 0;
var tags = document.getElementsByTagName('div');
for (var i = 0; i < tags.length; i++) {
var el=tags[i].getAttribute("id");
if (el=='mojaStopka')
footers++;
else if (hideAll && (el=='mójNagłówek')) {
tags[i].innerHTML="";
noFooter=true;
}
}
if (noFooter) return;
var footer = document.getElementById('mojaStopka');
if ((footer !== null) && (footers==1)) {
var bodyContent = document.getElementById('bodyContent');
if (bodyContent !== null) {
var s0=document.getElementById('mojaStopka0');
var s1=document.getElementById('mojaStopka1');
if ((s1 !== null) ||
((s0 === null) && (bodyContent.innerHTML.length>8000))){
var strona=document.getElementById('strona');
if(strona!==null){
strona.appendChild(footer);
}else{
var catlinks=document.getElementById('catlinks');
if(catlinks !== null){
bodyContent.insertBefore(footer,catlinks);
}else{
bodyContent.appendChild(footer);
}
}
}
}
}
/* Koniec skryptu odpowiedzialnego za wyświetlanie szablonu Nagłówek [[Szablon:Nagłówek]] */
};
$(Common.Naglowek);
/*Informacje o danej stronie*/
Common.PageInfoInit=function(){
var _g = /_/g;
this.name = mw.config.get('wgPageName').replace(/_/g, ' ');
this.namespace = mw.config.get('wgNamespaceNumber');
var i = this.name.search(/\/[^\/]*$/g);
this.title = this.name.slice(i + 1);
this.book = this.name.replace(/\/.*/g, "");
if ( document.URL.search("//pl.wikibooks.org/w/index.php") != -1 ) {
re = /\&diff=/g;
this.diff = re.test(document.URL);
re = /\&action=[^\&]*/g;
this.action = document.URL.match(re);
if ( this.action === null ) {
this.action = 'get';
} else {
this.action = this.action[0].slice(8, this.action[0].length);
}
} else {
this.diff = null;
this.action = 'get';
}
}
Common.pageInfo = new Common.PageInfoInit();
/** Collapsible tables *********************************************************
*
* Description: Allows tables to be collapsed, showing only the header. See
* [[en:Wikipedia:NavFrame]].
* Maintainers: [[User:R. Koot]]
*/
Common.autoCollapse = 2;
Common.collapseCaption = "ukryj";
Common.expandCaption = "pokaż";
Common.collapseTable=function( tableIndex )
{
var Button = document.getElementById( "collapseButton" + tableIndex );
var Table = document.getElementById( "collapsibleTable" + tableIndex );
if ( !Table || !Button ) {
return false;
}
var Rows = Table.rows;
if ( Button.firstChild.data == Common.collapseCaption ) {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = "none";
}
Button.firstChild.data = Common.expandCaption;
} else {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = Rows[0].style.display;
}
Button.firstChild.data = Common.collapseCaption;
}
}
Common.createCollapseButtons=function()
{
var tableIndex = 0;
var NavigationBoxes = new Object();
var Tables = document.getElementsByTagName( "table" );
for ( var i = 0; i < Tables.length; i++ ) {
if ( $(Tables[i]).hasClass( "collapsible" ) ) {
/* only add button and increment count if there is a header row to work with */
var HeaderRow = Tables[i].getElementsByTagName( "tr" )[0];
if (!HeaderRow) continue;
var Header = HeaderRow.getElementsByTagName( "th" )[0];
if (!Header) continue;
NavigationBoxes[ tableIndex ] = Tables[i];
Tables[i].setAttribute( "id", "collapsibleTable" + tableIndex );
var Button = document.createElement( "span" );
var ButtonLink = document.createElement( "a" );
var ButtonText = document.createTextNode( Common.collapseCaption );
Button.style.styleFloat = "right";
Button.style.cssFloat = "right";
Button.style.fontWeight = "normal";
Button.style.textAlign = "right";
Button.style.width = "6em";
ButtonLink.style.color = Header.style.color;
ButtonLink.setAttribute( "id", "collapseButton" + tableIndex );
ButtonLink.setAttribute( "href", "javascript:Common.collapseTable(" + tableIndex + ");" );
ButtonLink.appendChild( ButtonText );
Button.appendChild( document.createTextNode( "[" ) );
Button.appendChild( ButtonLink );
Button.appendChild( document.createTextNode( "]" ) );
$(Header.childNodes[0]).has('a#collapseButton' + tableIndex).each(function(i,element){
$(element).remove();
});
Header.insertBefore( Button, Header.childNodes[0]);
tableIndex++;
}
}
for ( var i = 0; i < tableIndex; i++ ) {
if ( $(NavigationBoxes[i]).hasClass( "collapsed" ) || ( tableIndex >= Common.autoCollapse && $(NavigationBoxes[i]).hasClass( "autocollapse" ) ) ) {
Common.collapseTable( i );
}
else if ( $(NavigationBoxes[i]).hasClass( "innercollapse" ) ) {
var element = NavigationBoxes[i];
while (element = element.parentNode) {
if ( $(element).hasClass( "outercollapse" ) ) {
Common.collapseTable ( i );
break;
}
}
}
}
}
$(Common.createCollapseButtons );
/** Dynamic Navigation Bars (experimental) *************************************
*
* Description: See [[Wikipedia:NavFrame]].
* Maintainers: UNMAINTAINED
*/
// set up the words in your language
Common.NavigationBarHide = '[' + Common.collapseCaption + ']';
Common.NavigationBarShow = '[' + Common.expandCaption + ']';
// shows and hides content and picture (if available) of navigation bars
// Parameters:
// indexNavigationBar: the index of navigation bar to be toggled
Common.toggleNavigationBar=function(indexNavigationBar)
{
var NavToggle = document.getElementById("NavToggle" + indexNavigationBar);
var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);
if (!NavFrame || !NavToggle) {
return false;
}
// if shown now
if (NavToggle.firstChild.data == Common.NavigationBarHide) {
for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
if ( $(NavChild).hasClass( 'NavPic' ) ) {
NavChild.style.display = 'none';
}
if ( $(NavChild).hasClass( 'NavContent') ) {
NavChild.style.display = 'none';
}
}
NavToggle.firstChild.data = Common.NavigationBarShow;
// if hidden now
} else if (NavToggle.firstChild.data == Common.NavigationBarShow) {
for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
if ($(NavChild).hasClass( 'NavPic')) {
NavChild.style.display = 'block';
}
if ($(NavChild).hasClass( 'NavContent')) {
NavChild.style.display = 'block';
}
}
NavToggle.firstChild.data = Common.NavigationBarHide;
}
}
// adds show/hide-button to navigation bars
Common.createNavigationBarToggleButton=function()
{
var indexNavigationBar = 0;
// iterate over all < div >-elements
var divs = document.getElementsByTagName("div");
for (var i = 0; NavFrame = divs[i]; i++) {
// if found a navigation bar
if ($(NavFrame).hasClass( "NavFrame")) {
indexNavigationBar++;
var NavToggle = document.createElement("a");
NavToggle.className = 'NavToggle';
NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
NavToggle.setAttribute('href', 'javascript:Common.toggleNavigationBar(' + indexNavigationBar + ');');
var isCollapsed = $(NavFrame).hasClass( "collapsed" );
/*
* Check if any children are already hidden. This loop is here for backwards compatibility:
* the old way of making NavFrames start out collapsed was to manually add style="display:none"
* to all the NavPic/NavContent elements. Since this was bad for accessibility (no way to make
* the content visible without JavaScript support), the new recommended way is to add the class
* "collapsed" to the NavFrame itself, just like with collapsible tables.
*/
for (var NavChild = NavFrame.firstChild; NavChild != null && !isCollapsed; NavChild = NavChild.nextSibling) {
if ( $(NavChild).hasClass( 'NavPic' ) || $(NavChild).hasClass( 'NavContent' ) ) {
if ( NavChild.style.display == 'none' ) {
isCollapsed = true;
}
}
}
if (isCollapsed) {
for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
if ( $(NavChild).hasClass( 'NavPic' ) || $(NavChild).hasClass( 'NavContent' ) ) {
NavChild.style.display = 'none';
}
}
}
var NavToggleText = document.createTextNode(isCollapsed ? Common.NavigationBarShow : Common.NavigationBarHide);
NavToggle.appendChild(NavToggleText);
// Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked)
for(var j=0; j < NavFrame.childNodes.length; j++) {
if ($(NavFrame.childNodes[j]).hasClass( "NavHead")) {
$(NavFrame.childNodes[j]).children('a.NavToggle#NavToggle' + indexNavigationBar).each(function(i,element){
$(element).remove();
});
NavFrame.childNodes[j].appendChild(NavToggle);
}
}
NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
}
}
}
$(Common.createNavigationBarToggleButton );
// Wyszukiwanie Google na stronach podręczników
Common.googleSearchInitialized = false;
Common.insertGoogleSearch=function() {
if ( mw.config.get('wgNamespaceNumber') != 0 || Common.googleSearchInitialized ) {
return;
}
Common.googleSearchInitialized = true;
var google = "http://www.google.com/custom?sa=Google+Search&domains=pl.wikibooks.org/wiki/PAGE&sitesearch=pl.wikibooks.org/wiki/PAGE";
var ul = jQuery('#p-tb ul')[0];
if (!ul) {
return;
}
var link = document.createElement('a');
var book = Common.pageInfo.book;
if ( book.length == 1 || book.indexOf('++') != -1 || encodeURIComponent(book) != book ) {
google = "http://www.google.com/custom?sa=Google+Search&domains=pl.wikibooks.org/wiki/&sitesearch=pl.wikibooks.org/wiki/&q=%22PAGE%22"
}
link.href = google.replace(/PAGE/g, encodeURIComponent(book));
link.appendChild(document.createTextNode("Szukaj w podręczniku"));
var li = document.createElement('li');
li.id = "google-trick-search";
li.appendChild(link);
$(ul).children('li#google-trick-search').each(function(i,element){
$(element).remove();
});
ul.insertBefore(li, ul.firstChild);
}
$(Common.insertGoogleSearch);
/*Funkcja do liczenia szerokościm mapska przewijania w pionowego, wtedy x_box_right=="y", lub poziomego, wtedy inny parametr inny niż dla paska pionowego*/
Common.PobierzSzerokoscPaskaPrzewijania=function(x_box_right){
var div = $('<div style="width:50px;height:50px;overflow:hidden;position:absolute;top:-200px;left:-200px;"><div style="height:100px;"></div></div>');
$('body').append(div);
var w1 = $('div', div)["inner"+((x_box_right=="y")?"Width":"Height")]();
div.css('overflow-'+(x_box_right||"y"), 'scroll');
var w2 = $('div', div)["inner"+((x_box_right=="y")?"Width":"Height")]();
$(div).remove();
return (w1 - w2);
}
/*Funkcje do obsługi pasków przewijania*/
Common.ScrollBarOverflow=function(){
$('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){
/*start overflow*/
var comp=window.getComputedStyle(element_g, null);
var display=comp.getPropertyValue("display");
if(display=="none"){return;}
var overflow=comp.getPropertyValue("overflow");
var overflow_x=$(element_g).hasClass('mw-overflow-x');
if(overflow_x){
var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x"));
if((overflowX)&&(overflowX=="auto")){
element_g.classList.remove("mw-scrollbar-overflow-x");
const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false
if(hasHorizontalScrollbar){
element_g.classList.add("mw-scrollbar-overflow-x");
}
}
}
var overflow_y=$(element_g).hasClass('mw-overflow-y');
if(overflow_y){
var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y"));
if((overflowY)&&(overflowY=="auto")){
element_g.classList.remove("mw-scrollbar-overflow-y");
const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false
if(hasVerticalScrollbar){
element_g.classList.add("mw-scrollbar-overflow-y");
}
}
}
/*koniec overflow*/
});
}
/*Uruchamianie funkcji Common.ScrollBarOverflow*/
$(Common.ScrollBarOverflow);
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji Common.ScrollBarOverflow*/
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,'scroll', 'ScrollBarOverflow');
Common.ZdarzeniaJavaScript(window,'resize', 'ScrollBarOverflow');
});
/*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/
Common.StickyXY=function(){
$('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){
var comp=window.getComputedStyle(element_g, null);
function FunStickyXY(height,top,bottom,width_box,left_box,right_box,x_box,x_box_right){
var pozycje_paskow=new Array();
$(element_g).find('*').each(function(i,element){
var comp=window.getComputedStyle(element, null);
var overflow=comp.getPropertyValue("overflow");
var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x"));
var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y"));
if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){
pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft));
}
});
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header, html.client-js body.skin-timeless #mw-header-container ~ #mw-header-hack').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]+rect_sticky[top]);
});
var StickyXYTopOld=$(element_g).data('stickyXYOld-'+top);var StickyXYBottomOld=$(element_g).data('stickyXYOld-'+bottom);
if(StickyXYTopOld===undefined){
var topold_war=parseFloat(element_g.style[top]);
$(element_g).data('stickyXYOld-'+top,((!isNaN(topold_war))?topold_war:0));
}
if(StickyXYBottomOld===undefined){
var bottomold_war=parseFloat(element_g.style[bottom]);
$(element_g).data('stickyXYOld-'+bottom,((!isNaN(bottomold_war))?bottomold_war:0));
}
var topold=$(element_g).data('stickyXYOld-'+top)+height_sticky+5;
var margintop=parseFloat(comp.getPropertyValue("margin-"+top));
margintop=((!isNaN(margintop))?margintop:0);
var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom));
marginbottom=((!isNaN(marginbottom))?marginbottom:0);
var przodek_height=undefined;
element_g.style[height]="auto";
element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[top]="auto";
element_g.style[bottom]="auto";
if(width_box!=null){
element_g.style[width_box]="auto";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[left_box]="auto";
element_g.style[right_box]="0";
$(element_g).find('.mw-not-overflow-'+x_box+'.mw-overflow-'+x_box).each(function(i,element){
element.style[width_box]="auto";
element.classList.remove('mw-scrollbar-overflow-x');
element.classList.remove('mw-scrollbar-overflow-y');
});
}
/**/
var parents_node_fun=$(element_g).parents('.mw-parent-node').first();
if((parents_node_fun==null)||(parents_node_fun.length==0)){return;}
var width_rodzic=null;
var rodzic_element=undefined;
var comp_rodz;
parents_node_fun.each(function(i,element){
comp_rodz=window.getComputedStyle(element,null);
przodek_height=parseFloat(comp_rodz.getPropertyValue([height]));
width_rodzic=width_box?parseFloat(comp_rodz.getPropertyValue([width_box])):null;
rodzic_element=element;
});
var height_box_real=parseFloat(comp.getPropertyValue(height));
var rect_dziecko=element_g.getBoundingClientRect();
var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))];
var rect_rodzic;
parents_node_fun.each(function(i,element){
rect_rodzic=element.getBoundingClientRect();
});
var top_ab=rect_rodzic[top];
var bottom_ab=(wys-rect_rodzic[bottom]);
var maxheight=Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('stickyXYOld-'+bottom)+5):(Math.max(0,$(element_g).data('stickyXYOld-'+bottom)+5-bottom_ab)))+marginbottom+margintop);
element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(((maxheight>=0)?maxheight:0)*(height_box_real/rect_dziecko[height]))+"px";
element_g.style[height]="100%";
var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)));
element_g.style[top]=top_obj+"px";
element_g.style[bottom]="auto";
if(width_box!=null){
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
rodzic_element.style.position="static";
rodzic_element.style.overflow="hidden";
var width_box_real=parseFloat(comp.getPropertyValue(width_box));
var rect_dziecko=element_g.getBoundingClientRect();
if(parseInt(width_box_real)>parseInt(rect_dziecko[width_box])){
if(width_box=="width"){
element_g.classList.remove('mw-scrollbar-overflow-x');
}else{
element_g.classList.remove('mw-scrollbar-overflow-y');
}
if(rect_dziecko[width_box]>width_rodzic){
if(width_box=="width"){
element_g.classList.add('mw-scrollbar-overflow-x');
}else{
element_g.classList.add('mw-scrollbar-overflow-y');
}
}
var width_box_real=parseFloat(comp.getPropertyValue(width_box));
var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box));
margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box));
var dlugosc=(width_rodzic-margin_all);
dlugosc=((dlugosc>=0)?dlugosc:0);
element_g.style.whiteSpace="nowrap";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px";
element_g.style[width_box]=width_box_real+"px";
Common.ScrollBarOverflow();
$(element_g).find('.mw-overflow-'+x_box+'.mw-not-overflow-'+x_box+'.mw-scrollbar-overflow-'+x_box).each(function(i,element){
var comp_element=window.getComputedStyle(element, null)
element.style[width_box]=(element["scroll"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+Common.PobierzSzerokoscPaskaPrzewijania(x_box_right)+parseFloat (comp_element.getPropertyValue('padding-'+left_box))+parseFloat(comp_element.getPropertyValue('padding-'+right_box)))+"px";
element.classList.remove('mw-scrollbar-overflow-'+x_box);
});
element_g.style.whiteSpace="normal";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[width_box]="auto";
var rect_dziecko=element_g.getBoundingClientRect();
var width_box_real=parseFloat(comp.getPropertyValue(width_box));
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px";
element_g.style[width_box]=width_box_real+"px";
element_g.style[left_box]="0";
element_g.style[right_box]="auto";
rodzic_element.style.position="relative";
}else{
element_g.style.whiteSpace="nowrap";
var szerokosc_box=rect_dziecko[width_box];
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(szerokosc_box)+"px";
element_g.style[width_box]=(szerokosc_box)+"px";
Common.ScrollBarOverflow();
$(element_g).find('.mw-overflow-'+x_box+'.mw-not-overflow-'+x_box+'.mw-scrollbar-overflow-'+x_box).each(function(i,element){
var comp_element=window.getComputedStyle(element, null);
element.style[width_box]=(element["scroll"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+Common.PobierzSzerokoscPaskaPrzewijania(x_box_right)+parseFloat (comp_element.getPropertyValue('padding-'+left_box))+parseFloat(comp_element.getPropertyValue('padding-'+right_box)))+"px";
element.classList.remove('mw-scrollbar-overflow-'+x_box);
});
element_g.style.whiteSpace="normal";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[width_box]="auto";
var rect_dziecko=element_g.getBoundingClientRect();
var szerokosc_box=rect_dziecko[width_box];
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(szerokosc_box)+"px";
element_g.style[width_box]=(szerokosc_box)+"px";
var szerokosc=rect_dziecko[width_box]+parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box));
if(parseInt(szerokosc)>parseInt(width_rodzic)){
element_g.style[right_box]="0";
element_g.style[left_box]="auto";
rodzic_element.style.overflow="visible";
}else{
element_g.style[left_box]="0";
element_g.style[right_box]="auto";
rodzic_element.style.position="relative";
}
}
}
element_g.style[height]="auto";
element_g.style[height]=(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
Common.ScrollBarOverflow();
for(var i in pozycje_paskow){
pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1];
pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2];
}
}
element_g.classList.add('mw-sticky-js');
var display=comp.getPropertyValue("display");
if(display=="none"){return;}
var visibility=comp.getPropertyValue("visibility");
if(visibility=="hidden"){return;}
var position=comp.getPropertyValue("position");
if(position!="absolute"){return;}
var sticky_x=$(element_g).hasClass('mw-sticky-x');
var sticky_y=$(element_g).hasClass('mw-sticky-y');
if((sticky_x)&&(!sticky_y)){
var str=$(element_g).parents('.strona_górna, .strona_dolna').first();
if(str.hasClass('strona_dolna')){
FunStickyXY("width","left","right","height","top","bottom","y","x");
}else if(str.hasClass('strona_górna')){
FunStickyXY("width","left","right","height","bottom","top","y","x");
}
}else if((!sticky_x)&&(sticky_y)){
var str=$(element_g).parents('.strona_prawa, .strona_lewa').first();
if(str.hasClass('strona_prawa')){
FunStickyXY("height","top","bottom","width","left","right","x","y");
}else if(str.hasClass('strona_lewa')){
FunStickyXY("height","top","bottom","width","right","left","x","y");
}
}else if((sticky_x)&&(sticky_y)){
FunStickyXY("width","left","right",null);
FunStickyXY("height","top","bottom",null);
}
});
}
/*Uruchamianie funkcji Common StickyXY*/
$(Common.StickyXY);
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji Common.StickyXY*/
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,'scroll', 'StickyXY');
Common.ZdarzeniaJavaScript(window,'resize', 'StickyXY');
});
/*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/
Common.OptimalXY=function(){
$('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){
var comp=window.getComputedStyle(element_g, null);
function FunOptimalXY(width,left,right){
var pozycje_paskow=new Array();
$(element_g).find('*').each(function(i,element){
var comp=window.getComputedStyle(element, null);
var overflow=comp.getPropertyValue("overflow");
var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x"));
var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y"));
if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){
pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft));
}
});
var width_rodzic=null;
var rodzic_node;
var comp_rodz;
$(element_g).parents('.mw-parent-node').first().each(function(i,element){
comp_rodz=window.getComputedStyle(element,null);
width_rodzic=parseFloat(comp_rodz.getPropertyValue([width]));
rodzic_node=element;
});
if((width_rodzic!=null)&&(!isNaN(width_rodzic))){
element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
var width_box_real=parseFloat(comp.getPropertyValue(width));
var rect_dziecko=element_g.getBoundingClientRect();
if(width=="width"){
element_g.classList.remove('mw-scrollbar-overflow-x');
}else{
element_g.classList.remove('mw-scrollbar-overflow-y');
}
if(parseInt(width_box_real)>parseInt(rect_dziecko[width])){
var rect_dziecko=element_g.getBoundingClientRect();
if(rect_dziecko[width]>width_rodzic){
if(width=="width"){
element_g.classList.add('mw-scrollbar-overflow-x');
}else{
element_g.classList.add('mw-scrollbar-overflow-y');
}
}
var width_box_real=parseFloat(comp.getPropertyValue(width));
var margin_all=parseFloat(comp.getPropertyValue("margin-"+left))+parseFloat(comp.getPropertyValue("margin-"+right));
margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right));
var dlugosc=(width_rodzic-margin_all);
dlugosc=((dlugosc>=0)?dlugosc:0);
element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px";
}else{
element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(rect_dziecko[width])+"px";
}
var str=$(element_g).parents('.strona_prawa, .strona_lewa, .strona_górna, .strona_dolna').first();
if(!str.hasClass('strona_start-nawigacja_boksy')){
var rect_dziecko=element_g.getBoundingClientRect();
var szerokosc=rect_dziecko[width]+parseFloat(comp.getPropertyValue("margin-"+left))+parseFloat(comp.getPropertyValue("margin-"+right));
if(parseInt(szerokosc)>parseInt(width_rodzic)){
str.css('position','static');
}else{
str.css('position','relative');
}
}
}
for(var i in pozycje_paskow){
pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1];
pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2];
}
};
element_g.classList.add('mw-optimal-js');
var display=comp.getPropertyValue("display");
if(display=="none"){return;}
var visibility=comp.getPropertyValue("visibility");
if(visibility=="hidden"){return;}
var position=comp.getPropertyValue("position");
if(position!="absolute"){return;}
var optimal_x=$(element_g).hasClass('mw-optimal-x');
var optimal_y=$(element_g).hasClass('mw-optimal-y');
if(optimal_x){
FunOptimalXY("width","left","right");
}
if(optimal_y){
FunOptimalXY("height","top","bottom");
}
});
}
/*Uruchamianie funkcji Common.OptimalXY*/
$(Common.OptimalXY);
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji OptimalXY*/
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Definicja dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz stylów CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
var id=element_f.getAttribute("id")
if((id)&&(id==(id_tabeli_lub_ramki+i))){
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
$('#mw-content-text .mw-parser-output').find('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){
var href=element_g.getAttribute('href');
if((href!=null)&&(href!="")){
var col="[\\s;\\(\\,]*javascript:"+fun_obiektu.replace(/\./g,"\\.")+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*";
var re_frame = new RegExp(col,'g');
var re_javascript=new RegExp("^[\\s;]*javascript:");
if((re_javascript.test(href))&&(re_frame.test(href))){
var href=element_g.getAttribute('href');
if((href!==null)&&(href!="")){
function DodajSkryptJavaScript(fun){
var re=new RegExp("javascript:"+fun.replace(/\./g,"\\.")+"\\s*\\(\\s*\\)",'g');
var href_nowe=element_g.getAttribute('href');
if(!re.test(href_nowe)){
element_g.setAttribute('href',href_nowe.replace(/[;\s]*$/g,"")+';javascript:'+fun+"()");
}
}
DodajSkryptJavaScript('Common.ScrollBarOverflow');
DodajSkryptJavaScript('Common.StickyXY');
DodajSkryptJavaScript('Common.OptimalXY');
}
}
}
});
}
}
});
}
/*Koniec dodatkowych funkcji*/
/*Uruchamianie dodatkowych funkcji dla tabel TABLE i ramek DIV nawigacyjnych.*/
$(function(){
/*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/
Common.RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','Common.collapseTable');
/*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/
Common.RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','Common.toggleNavigationBar');
});
/*Koniec uruchamiania*/
/*Definicje dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz,z_mouse){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
var tab_transition={'start':true,'run':true,'cancel':true,'end':true};
var tab_przegladarki={'':true,'webkit':true,'moz':true,'o':true};
for(var a in tab_transition){
for(var b in tab_przegladarki){
var zdarzenie=b+'transition'+a;
Common.ZdarzeniaJavaScript(css,zdarzenie,fun_zdarz);
}
}
if(z_mouse){
Common.ZdarzeniaJavaScript(css,"mouseenter",fun_zdarz);
Common.ZdarzeniaJavaScript(css,"mouseleave",fun_zdarz);
}
};
/*Koniec dodatkowych zdarzeń*/
/*Uruchamianie dodatkowych zdarzeń*/
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY',true);
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY',true);
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("body.skin-vector-search-vue .vector-sticky-header",'StickyXY',false);
});
/*Koniec uruchamiania dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('#mw-content-text .mw-parser-output').find('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('#mw-content-text .mw-parser-output').find('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
$(element).attr('mw-menu-boks',"false");
});
$('#mw-content-text .mw-parser-output').find('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){
var czy_visible=$(element).css('visibility');
$(element).css('visibility',"visible");
$(element).attr('mw-menu-boks',"true");
var str=$(element).parents('.strona_prawa, .strona_lewa').first();
str.css('position','relative');
str.addClass('strona_start-nawigacja_spis');
str.removeClass('strona_start-nawigacja_boksy');
if(czy_visible=="hidden"){
$(Common.ScrollBarOverflow);
$(Common.StickyXY);
}
});
$('#mw-content-text .mw-parser-output').find('.strona_start').find('.strona_środkowa > .menu').children('.spis_treści, .boksy').each(function(i,element){
if($(element).hasClass('boksy')) $(element).attr('mw-menu-boks',"true");else if($(element).hasClass('spis_treści')) $(element).attr('mw-menu-boks',"false");
});
Common.StronaStartZdarzeniePrzycisku=function(){
var id=this;
$(id).parents('#mw-content-text .mw-parser-output .strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var menu_boks_zmienna=$(element).attr('mw-menu-boks');
menu_boks_zmienna=(((menu_boks_zmienna)&&(menu_boks_zmienna!=""))?menu_boks_zmienna:"false");
if(menu_boks_zmienna=="false"){
$(element).css('display',"block");
$(element).attr('mw-menu-boks','true');
}else if(menu_boks_zmienna=="true"){
$(element).css('display',"none");
$(element).attr('mw-menu-boks','false');
}
});
$(id).parents('#mw-content-text .mw-parser-output .strona_start').first().find('.strona_lewa, .strona_prawa').children('.nawigacja_boksy, .nawigacja_spis').each(function(i,element){
var menu_boks_zmienna=$(element).attr('mw-menu-boks');
menu_boks_zmienna=(((menu_boks_zmienna)&&(menu_boks_zmienna!=""))?menu_boks_zmienna:"false");
if(menu_boks_zmienna=="false"){
$(element).css('visibility',"visible");
$(element).attr('mw-menu-boks',"true");
var str=$(element).parents('.strona_prawa, .strona_lewa').first();
if($(element).hasClass('nawigacja_boksy')){
str.css('position','static');
str.addClass('strona_start-nawigacja_boksy');
str.removeClass('strona_start-nawigacja_spis');
$(Common.ScrollBarOverflow);
$(Common.OptimalXY);
}else if($(element).hasClass('nawigacja_spis')){
str.css('position','relative');
str.addClass('strona_start-nawigacja_spis');
str.removeClass('strona_start-nawigacja_boksy');
$(Common.ScrollBarOverflow);
$(Common.StickyXY);
}
}else if(menu_boks_zmienna=="true"){
$(element).css('visibility',"hidden");
$(element).attr('mw-menu-boks',"false");
}
});
}
if(Common.StronaStartZdarzeniePrzycisku)Common.ZdarzeniaJavaScript(elements,'click','StronaStartZdarzeniePrzycisku');
}
$(Common.StronaStart);
})(Common_zmienna_z_MediaWiki_Wikibooks,Common);
apav9cu690ty7suwrbw2wn27h8g5k57
438991
438990
2022-08-28T18:48:36Z
Persino
2851
javascript
text/javascript
mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true );
/**/
/* Umieszczony tutaj kod JavaScript zostanie załadowany przez każdego użytkownika, podczas każdego ładowania strony.
*/
/*
* Zmienna Common.pageInfo, jego elementy, instrukcja obsługi:
* Common.pageInfo.namespace numer przestrzeni nazw (równe wgNamespaceNumber)
* Common.pageInfo.name pełna nazwa strony
* Common.pageInfo.title tytuł strony, czyli ostatnia część po '/' albo jest równe pageInfo.name, gdy nigdzie nie występuje slash
* Common.pageInfo.book tytuł książki
* Common.pageInfo.action akcja taka jaka jest w adresie URL pod "action=", w przypadku normalnego czytania strony, action jest równe "get"
* Common.pageInfo.diff null w przypadku, gdy nie porównujemy wersji, w przeciwnym wypadku wartość występującą w adresie URL
*/
/*Uzyskanie dostępu do tablicy - przestrzeni: Common, z innej strony .js*/
var Common_zmienna_z_MediaWiki_Wikibooks=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
/*Funkcja, by nie było przecieków pamięci*/
(function(Common_zmienna_z_MediaWiki_Wikibooks,Common){
/*Sprawdza, czy użytkownik ma własną zmienną Common*/
Common.IsUserCommon=function(){return ((Common_zmienna_z_MediaWiki_Wikibooks)?true:false);};
/*Funkcja zwraca zmienną Common ze strony MediaWiki:Common.js*/
Common.MediaWikiCommon=function(){return (Common.IsUserCommon()?Common_zmienna_z_MediaWiki_Wikibooks:Common);}
/*Funkcja zwraca tablicę Common użytkownika, jeżeli taką posiada, w przeciwnym wypadku zwraca undefined*/
Common.UserCommon=function(){return (Common.IsUserCommon()?Common:undefined);}
/*Funkcja zwraca Common z tej strony*/
Common.NoweCommon=function(){return Common;}
/*Funkcja zwraca Common ze strony MediaWiki:Common.js, jeżeli użytkownik posiada własne Common w jego pliku Common, w przeciwnym wypadku zwraca undefined*/
Common.StareCommon=function(){return Common_zmienna_z_MediaWiki_Wikibooks;}
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
/*Uruchamianie funkcji Common.LokowanieTopSelf*/
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen,tylko_odrejestruj){
/*
css - adres html obiektu,
zdarzenie - zdarzenie jak click,
funkcja_zdarzen - nazwa funkcji zdarzeń w starej przestrzeni Common lub nowej, jak StickyXY,
tylko_odrejestruj - czy tylko zdarzenie ma odrejestrować w starej przestrzeni Common.
*/
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((Common_zmienna_z_MediaWiki_Wikibooks)&&(Common_zmienna_z_MediaWiki_Wikibooks[funkcja_zdarzen])){
$(css).off(zdarzenie,Common_zmienna_z_MediaWiki_Wikibooks[funkcja_zdarzen]);
}
if((!tylko_odrejestruj)&&(Common)&&(Common[funkcja_zdarzen])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen]);
}
}
}
/*Funkcje w przestrzeni nazw Common*/
Common.Naglowek=function(){
/* Skrypt odpowiedzialny za wyświetlanie szablonu Nagłówek [[Szablon:Nagłówek]] */
var hideAll = document.getElementById('mójNagłówekUkryj');
var noFooter = false;
var footers = 0;
var tags = document.getElementsByTagName('div');
for (var i = 0; i < tags.length; i++) {
var el=tags[i].getAttribute("id");
if (el=='mojaStopka')
footers++;
else if (hideAll && (el=='mójNagłówek')) {
tags[i].innerHTML="";
noFooter=true;
}
}
if (noFooter) return;
var footer = document.getElementById('mojaStopka');
if ((footer !== null) && (footers==1)) {
var bodyContent = document.getElementById('bodyContent');
if (bodyContent !== null) {
var s0=document.getElementById('mojaStopka0');
var s1=document.getElementById('mojaStopka1');
if ((s1 !== null) ||
((s0 === null) && (bodyContent.innerHTML.length>8000))){
var strona=document.getElementById('strona');
if(strona!==null){
strona.appendChild(footer);
}else{
var catlinks=document.getElementById('catlinks');
if(catlinks !== null){
bodyContent.insertBefore(footer,catlinks);
}else{
bodyContent.appendChild(footer);
}
}
}
}
}
/* Koniec skryptu odpowiedzialnego za wyświetlanie szablonu Nagłówek [[Szablon:Nagłówek]] */
};
$(Common.Naglowek);
/*Informacje o danej stronie*/
Common.PageInfoInit=function(){
var _g = /_/g;
this.name = mw.config.get('wgPageName').replace(/_/g, ' ');
this.namespace = mw.config.get('wgNamespaceNumber');
var i = this.name.search(/\/[^\/]*$/g);
this.title = this.name.slice(i + 1);
this.book = this.name.replace(/\/.*/g, "");
if ( document.URL.search("//pl.wikibooks.org/w/index.php") != -1 ) {
re = /\&diff=/g;
this.diff = re.test(document.URL);
re = /\&action=[^\&]*/g;
this.action = document.URL.match(re);
if ( this.action === null ) {
this.action = 'get';
} else {
this.action = this.action[0].slice(8, this.action[0].length);
}
} else {
this.diff = null;
this.action = 'get';
}
}
Common.pageInfo = new Common.PageInfoInit();
/** Collapsible tables *********************************************************
*
* Description: Allows tables to be collapsed, showing only the header. See
* [[en:Wikipedia:NavFrame]].
* Maintainers: [[User:R. Koot]]
*/
Common.autoCollapse = 2;
Common.collapseCaption = "ukryj";
Common.expandCaption = "pokaż";
Common.collapseTable=function( tableIndex )
{
var Button = document.getElementById( "collapseButton" + tableIndex );
var Table = document.getElementById( "collapsibleTable" + tableIndex );
if ( !Table || !Button ) {
return false;
}
var Rows = Table.rows;
if ( Button.firstChild.data == Common.collapseCaption ) {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = "none";
}
Button.firstChild.data = Common.expandCaption;
} else {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = Rows[0].style.display;
}
Button.firstChild.data = Common.collapseCaption;
}
}
Common.createCollapseButtons=function()
{
var tableIndex = 0;
var NavigationBoxes = new Object();
var Tables = document.getElementsByTagName( "table" );
for ( var i = 0; i < Tables.length; i++ ) {
if ( $(Tables[i]).hasClass( "collapsible" ) ) {
/* only add button and increment count if there is a header row to work with */
var HeaderRow = Tables[i].getElementsByTagName( "tr" )[0];
if (!HeaderRow) continue;
var Header = HeaderRow.getElementsByTagName( "th" )[0];
if (!Header) continue;
NavigationBoxes[ tableIndex ] = Tables[i];
Tables[i].setAttribute( "id", "collapsibleTable" + tableIndex );
var Button = document.createElement( "span" );
var ButtonLink = document.createElement( "a" );
var ButtonText = document.createTextNode( Common.collapseCaption );
Button.style.styleFloat = "right";
Button.style.cssFloat = "right";
Button.style.fontWeight = "normal";
Button.style.textAlign = "right";
Button.style.width = "6em";
ButtonLink.style.color = Header.style.color;
ButtonLink.setAttribute( "id", "collapseButton" + tableIndex );
ButtonLink.setAttribute( "href", "javascript:Common.collapseTable(" + tableIndex + ");" );
ButtonLink.appendChild( ButtonText );
Button.appendChild( document.createTextNode( "[" ) );
Button.appendChild( ButtonLink );
Button.appendChild( document.createTextNode( "]" ) );
$(Header.childNodes[0]).has('a#collapseButton' + tableIndex).each(function(i,element){
$(element).remove();
});
Header.insertBefore( Button, Header.childNodes[0]);
tableIndex++;
}
}
for ( var i = 0; i < tableIndex; i++ ) {
if ( $(NavigationBoxes[i]).hasClass( "collapsed" ) || ( tableIndex >= Common.autoCollapse && $(NavigationBoxes[i]).hasClass( "autocollapse" ) ) ) {
Common.collapseTable( i );
}
else if ( $(NavigationBoxes[i]).hasClass( "innercollapse" ) ) {
var element = NavigationBoxes[i];
while (element = element.parentNode) {
if ( $(element).hasClass( "outercollapse" ) ) {
Common.collapseTable ( i );
break;
}
}
}
}
}
$(Common.createCollapseButtons );
/** Dynamic Navigation Bars (experimental) *************************************
*
* Description: See [[Wikipedia:NavFrame]].
* Maintainers: UNMAINTAINED
*/
// set up the words in your language
Common.NavigationBarHide = '[' + Common.collapseCaption + ']';
Common.NavigationBarShow = '[' + Common.expandCaption + ']';
// shows and hides content and picture (if available) of navigation bars
// Parameters:
// indexNavigationBar: the index of navigation bar to be toggled
Common.toggleNavigationBar=function(indexNavigationBar)
{
var NavToggle = document.getElementById("NavToggle" + indexNavigationBar);
var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);
if (!NavFrame || !NavToggle) {
return false;
}
// if shown now
if (NavToggle.firstChild.data == Common.NavigationBarHide) {
for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
if ( $(NavChild).hasClass( 'NavPic' ) ) {
NavChild.style.display = 'none';
}
if ( $(NavChild).hasClass( 'NavContent') ) {
NavChild.style.display = 'none';
}
}
NavToggle.firstChild.data = Common.NavigationBarShow;
// if hidden now
} else if (NavToggle.firstChild.data == Common.NavigationBarShow) {
for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
if ($(NavChild).hasClass( 'NavPic')) {
NavChild.style.display = 'block';
}
if ($(NavChild).hasClass( 'NavContent')) {
NavChild.style.display = 'block';
}
}
NavToggle.firstChild.data = Common.NavigationBarHide;
}
}
// adds show/hide-button to navigation bars
Common.createNavigationBarToggleButton=function()
{
var indexNavigationBar = 0;
// iterate over all < div >-elements
var divs = document.getElementsByTagName("div");
for (var i = 0; NavFrame = divs[i]; i++) {
// if found a navigation bar
if ($(NavFrame).hasClass( "NavFrame")) {
indexNavigationBar++;
var NavToggle = document.createElement("a");
NavToggle.className = 'NavToggle';
NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
NavToggle.setAttribute('href', 'javascript:Common.toggleNavigationBar(' + indexNavigationBar + ');');
var isCollapsed = $(NavFrame).hasClass( "collapsed" );
/*
* Check if any children are already hidden. This loop is here for backwards compatibility:
* the old way of making NavFrames start out collapsed was to manually add style="display:none"
* to all the NavPic/NavContent elements. Since this was bad for accessibility (no way to make
* the content visible without JavaScript support), the new recommended way is to add the class
* "collapsed" to the NavFrame itself, just like with collapsible tables.
*/
for (var NavChild = NavFrame.firstChild; NavChild != null && !isCollapsed; NavChild = NavChild.nextSibling) {
if ( $(NavChild).hasClass( 'NavPic' ) || $(NavChild).hasClass( 'NavContent' ) ) {
if ( NavChild.style.display == 'none' ) {
isCollapsed = true;
}
}
}
if (isCollapsed) {
for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
if ( $(NavChild).hasClass( 'NavPic' ) || $(NavChild).hasClass( 'NavContent' ) ) {
NavChild.style.display = 'none';
}
}
}
var NavToggleText = document.createTextNode(isCollapsed ? Common.NavigationBarShow : Common.NavigationBarHide);
NavToggle.appendChild(NavToggleText);
// Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked)
for(var j=0; j < NavFrame.childNodes.length; j++) {
if ($(NavFrame.childNodes[j]).hasClass( "NavHead")) {
$(NavFrame.childNodes[j]).children('a.NavToggle#NavToggle' + indexNavigationBar).each(function(i,element){
$(element).remove();
});
NavFrame.childNodes[j].appendChild(NavToggle);
}
}
NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
}
}
}
$(Common.createNavigationBarToggleButton );
// Wyszukiwanie Google na stronach podręczników
Common.googleSearchInitialized = false;
Common.insertGoogleSearch=function() {
if ( mw.config.get('wgNamespaceNumber') != 0 || Common.googleSearchInitialized ) {
return;
}
Common.googleSearchInitialized = true;
var google = "http://www.google.com/custom?sa=Google+Search&domains=pl.wikibooks.org/wiki/PAGE&sitesearch=pl.wikibooks.org/wiki/PAGE";
var ul = jQuery('#p-tb ul')[0];
if (!ul) {
return;
}
var link = document.createElement('a');
var book = Common.pageInfo.book;
if ( book.length == 1 || book.indexOf('++') != -1 || encodeURIComponent(book) != book ) {
google = "http://www.google.com/custom?sa=Google+Search&domains=pl.wikibooks.org/wiki/&sitesearch=pl.wikibooks.org/wiki/&q=%22PAGE%22"
}
link.href = google.replace(/PAGE/g, encodeURIComponent(book));
link.appendChild(document.createTextNode("Szukaj w podręczniku"));
var li = document.createElement('li');
li.id = "google-trick-search";
li.appendChild(link);
$(ul).children('li#google-trick-search').each(function(i,element){
$(element).remove();
});
ul.insertBefore(li, ul.firstChild);
}
$(Common.insertGoogleSearch);
/*Funkcja do liczenia szerokościm mapska przewijania w pionowego, wtedy x_box_right=="y", lub poziomego, wtedy inny parametr inny niż dla paska pionowego*/
Common.PobierzSzerokoscPaskaPrzewijania=function(x_box_right){
var div = $('<div style="width:50px;height:50px;overflow:hidden;position:absolute;top:-200px;left:-200px;"><div style="height:100px;"></div></div>');
$('body').append(div);
var w1 = $('div', div)["inner"+((x_box_right=="y")?"Width":"Height")]();
div.css('overflow-'+(x_box_right||"y"), 'scroll');
var w2 = $('div', div)["inner"+((x_box_right=="y")?"Width":"Height")]();
$(div).remove();
return (w1 - w2);
}
/*Funkcje do obsługi pasków przewijania*/
Common.ScrollBarOverflow=function(){
$('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){
/*start overflow*/
var comp=window.getComputedStyle(element_g, null);
var display=comp.getPropertyValue("display");
if(display=="none"){return;}
var overflow=comp.getPropertyValue("overflow");
var overflow_x=$(element_g).hasClass('mw-overflow-x');
if(overflow_x){
var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x"));
if((overflowX)&&(overflowX=="auto")){
element_g.classList.remove("mw-scrollbar-overflow-x");
const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false
if(hasHorizontalScrollbar){
element_g.classList.add("mw-scrollbar-overflow-x");
}
}
}
var overflow_y=$(element_g).hasClass('mw-overflow-y');
if(overflow_y){
var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y"));
if((overflowY)&&(overflowY=="auto")){
element_g.classList.remove("mw-scrollbar-overflow-y");
const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false
if(hasVerticalScrollbar){
element_g.classList.add("mw-scrollbar-overflow-y");
}
}
}
/*koniec overflow*/
});
}
/*Uruchamianie funkcji Common.ScrollBarOverflow*/
$(Common.ScrollBarOverflow);
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji Common.ScrollBarOverflow*/
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,'scroll', 'ScrollBarOverflow');
Common.ZdarzeniaJavaScript(window,'resize', 'ScrollBarOverflow');
});
/*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/
Common.StickyXY=function(){
$('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){
var comp=window.getComputedStyle(element_g, null);
function FunStickyXY(height,top,bottom,width_box,left_box,right_box,x_box,x_box_right){
var pozycje_paskow=new Array();
$(element_g).find('*').each(function(i,element){
var comp=window.getComputedStyle(element, null);
var overflow=comp.getPropertyValue("overflow");
var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x"));
var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y"));
if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){
pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft));
}
});
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header, html.client-js body.skin-timeless #mw-header-container ~ #mw-header-hack').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]+rect_sticky[top]);
});
var StickyXYTopOld=$(element_g).data('stickyXYOld-'+top);var StickyXYBottomOld=$(element_g).data('stickyXYOld-'+bottom);
if(StickyXYTopOld===undefined){
var topold_war=parseFloat(element_g.style[top]);
$(element_g).data('stickyXYOld-'+top,((!isNaN(topold_war))?topold_war:0));
}
if(StickyXYBottomOld===undefined){
var bottomold_war=parseFloat(element_g.style[bottom]);
$(element_g).data('stickyXYOld-'+bottom,((!isNaN(bottomold_war))?bottomold_war:0));
}
var topold=$(element_g).data('stickyXYOld-'+top)+height_sticky+5;
var margintop=parseFloat(comp.getPropertyValue("margin-"+top));
margintop=((!isNaN(margintop))?margintop:0);
var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom));
marginbottom=((!isNaN(marginbottom))?marginbottom:0);
var przodek_height=undefined;
element_g.style[height]="auto";
element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[top]="auto";
element_g.style[bottom]="auto";
if(width_box!=null){
element_g.style[width_box]="auto";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[left_box]="auto";
element_g.style[right_box]="0";
$(element_g).find('.mw-not-overflow-'+x_box+'.mw-overflow-'+x_box).each(function(i,element){
element.style[width_box]="auto";
element.classList.remove('mw-scrollbar-overflow-x');
element.classList.remove('mw-scrollbar-overflow-y');
});
}
/**/
var parents_node_fun=$(element_g).parents('.mw-parent-node').first();
if((parents_node_fun==null)||(parents_node_fun.length==0)){return;}
var width_rodzic=null;
var rodzic_element=undefined;
var comp_rodz;
parents_node_fun.each(function(i,element){
comp_rodz=window.getComputedStyle(element,null);
przodek_height=parseFloat(comp_rodz.getPropertyValue([height]));
width_rodzic=width_box?parseFloat(comp_rodz.getPropertyValue([width_box])):null;
rodzic_element=element;
});
var height_box_real=parseFloat(comp.getPropertyValue(height));
var rect_dziecko=element_g.getBoundingClientRect();
var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))];
var rect_rodzic;
parents_node_fun.each(function(i,element){
rect_rodzic=element.getBoundingClientRect();
});
var top_ab=rect_rodzic[top];
var bottom_ab=(wys-rect_rodzic[bottom]);
var maxheight=Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('stickyXYOld-'+bottom)+5):(Math.max(0,$(element_g).data('stickyXYOld-'+bottom)+5-bottom_ab)))+marginbottom+margintop);
element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(((maxheight>=0)?maxheight:0)*(height_box_real/rect_dziecko[height]))+"px";
element_g.style[height]="100%";
var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)));
element_g.style[top]=top_obj+"px";
element_g.style[bottom]="auto";
if(width_box!=null){
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
rodzic_element.style.position="static";
rodzic_element.style.overflow="hidden";
var width_box_real=parseFloat(comp.getPropertyValue(width_box));
var rect_dziecko=element_g.getBoundingClientRect();
if(parseInt(width_box_real)>parseInt(rect_dziecko[width_box])){
if(width_box=="width"){
element_g.classList.remove('mw-scrollbar-overflow-x');
}else{
element_g.classList.remove('mw-scrollbar-overflow-y');
}
if(rect_dziecko[width_box]>width_rodzic){
if(width_box=="width"){
element_g.classList.add('mw-scrollbar-overflow-x');
}else{
element_g.classList.add('mw-scrollbar-overflow-y');
}
}
var width_box_real=parseFloat(comp.getPropertyValue(width_box));
var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box));
margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box));
var dlugosc=(width_rodzic-margin_all);
dlugosc=((dlugosc>=0)?dlugosc:0);
element_g.style.whiteSpace="nowrap";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px";
element_g.style[width_box]=width_box_real+"px";
Common.ScrollBarOverflow();
$(element_g).find('.mw-overflow-'+x_box+'.mw-not-overflow-'+x_box+'.mw-scrollbar-overflow-'+x_box).each(function(i,element){
var comp_element=window.getComputedStyle(element, null)
element.style[width_box]=(element["scroll"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+Common.PobierzSzerokoscPaskaPrzewijania(x_box_right)+parseFloat (comp_element.getPropertyValue('padding-'+left_box))+parseFloat(comp_element.getPropertyValue('padding-'+right_box)))+"px";
element.classList.remove('mw-scrollbar-overflow-'+x_box);
});
element_g.style.whiteSpace="normal";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[width_box]="auto";
var rect_dziecko=element_g.getBoundingClientRect();
var width_box_real=parseFloat(comp.getPropertyValue(width_box));
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px";
element_g.style[width_box]=width_box_real+"px";
element_g.style[left_box]="0";
element_g.style[right_box]="auto";
rodzic_element.style.position="relative";
}else{
element_g.style.whiteSpace="nowrap";
var szerokosc_box=rect_dziecko[width_box];
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(szerokosc_box)+"px";
element_g.style[width_box]=(szerokosc_box)+"px";
Common.ScrollBarOverflow();
$(element_g).find('.mw-overflow-'+x_box+'.mw-not-overflow-'+x_box+'.mw-scrollbar-overflow-'+x_box).each(function(i,element){
var comp_element=window.getComputedStyle(element, null);
element.style[width_box]=(element["scroll"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+Common.PobierzSzerokoscPaskaPrzewijania(x_box_right)+parseFloat (comp_element.getPropertyValue('padding-'+left_box))+parseFloat(comp_element.getPropertyValue('padding-'+right_box)))+"px";
element.classList.remove('mw-scrollbar-overflow-'+x_box);
});
element_g.style.whiteSpace="normal";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[width_box]="auto";
var rect_dziecko=element_g.getBoundingClientRect();
var szerokosc_box=rect_dziecko[width_box];
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(szerokosc_box)+"px";
element_g.style[width_box]=(szerokosc_box)+"px";
var szerokosc=rect_dziecko[width_box]+parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box));
if(parseInt(szerokosc)>parseInt(width_rodzic)){
element_g.style[right_box]="0";
element_g.style[left_box]="auto";
rodzic_element.style.overflow="visible";
}else{
element_g.style[left_box]="0";
element_g.style[right_box]="auto";
rodzic_element.style.position="relative";
}
}
}
element_g.style[height]="auto";
element_g.style[height]=(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
Common.ScrollBarOverflow();
for(var i in pozycje_paskow){
pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1];
pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2];
}
}
element_g.classList.add('mw-sticky-js');
var display=comp.getPropertyValue("display");
if(display=="none"){return;}
var visibility=comp.getPropertyValue("visibility");
if(visibility=="hidden"){return;}
var position=comp.getPropertyValue("position");
if(position!="absolute"){return;}
var sticky_x=$(element_g).hasClass('mw-sticky-x');
var sticky_y=$(element_g).hasClass('mw-sticky-y');
if((sticky_x)&&(!sticky_y)){
var str=$(element_g).parents('.strona_górna, .strona_dolna').first();
if(str.hasClass('strona_dolna')){
FunStickyXY("width","left","right","height","top","bottom","y","x");
}else if(str.hasClass('strona_górna')){
FunStickyXY("width","left","right","height","bottom","top","y","x");
}
}else if((!sticky_x)&&(sticky_y)){
var str=$(element_g).parents('.strona_prawa, .strona_lewa').first();
if(str.hasClass('strona_prawa')){
FunStickyXY("height","top","bottom","width","left","right","x","y");
}else if(str.hasClass('strona_lewa')){
FunStickyXY("height","top","bottom","width","right","left","x","y");
}
}else if((sticky_x)&&(sticky_y)){
FunStickyXY("width","left","right",null);
FunStickyXY("height","top","bottom",null);
}
});
}
/*Uruchamianie funkcji Common StickyXY*/
$(Common.StickyXY);
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji Common.StickyXY*/
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,'scroll', 'StickyXY');
Common.ZdarzeniaJavaScript(window,'resize', 'StickyXY');
});
/*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/
Common.OptimalXY=function(){
$('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){
var comp=window.getComputedStyle(element_g, null);
function FunOptimalXY(width,left,right){
var pozycje_paskow=new Array();
$(element_g).find('*').each(function(i,element){
var comp=window.getComputedStyle(element, null);
var overflow=comp.getPropertyValue("overflow");
var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x"));
var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y"));
if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){
pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft));
}
});
var width_rodzic=null;
var rodzic_node;
var comp_rodz;
$(element_g).parents('.mw-parent-node').first().each(function(i,element){
comp_rodz=window.getComputedStyle(element,null);
width_rodzic=parseFloat(comp_rodz.getPropertyValue([width]));
rodzic_node=element;
});
if((width_rodzic!=null)&&(!isNaN(width_rodzic))){
element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
var width_box_real=parseFloat(comp.getPropertyValue(width));
var rect_dziecko=element_g.getBoundingClientRect();
if(width=="width"){
element_g.classList.remove('mw-scrollbar-overflow-x');
}else{
element_g.classList.remove('mw-scrollbar-overflow-y');
}
if(parseInt(width_box_real)>parseInt(rect_dziecko[width])){
var rect_dziecko=element_g.getBoundingClientRect();
if(rect_dziecko[width]>width_rodzic){
if(width=="width"){
element_g.classList.add('mw-scrollbar-overflow-x');
}else{
element_g.classList.add('mw-scrollbar-overflow-y');
}
}
var width_box_real=parseFloat(comp.getPropertyValue(width));
var margin_all=parseFloat(comp.getPropertyValue("margin-"+left))+parseFloat(comp.getPropertyValue("margin-"+right));
margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right));
var dlugosc=(width_rodzic-margin_all);
dlugosc=((dlugosc>=0)?dlugosc:0);
element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px";
}else{
element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(rect_dziecko[width])+"px";
}
var str=$(element_g).parents('.strona_prawa, .strona_lewa, .strona_górna, .strona_dolna').first();
if(!str.hasClass('strona_start-nawigacja_boksy')){
var rect_dziecko=element_g.getBoundingClientRect();
var szerokosc=rect_dziecko[width]+parseFloat(comp.getPropertyValue("margin-"+left))+parseFloat(comp.getPropertyValue("margin-"+right));
if(parseInt(szerokosc)>parseInt(width_rodzic)){
str.css('position','static');
}else{
str.css('position','relative');
}
}
}
for(var i in pozycje_paskow){
pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1];
pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2];
}
};
element_g.classList.add('mw-optimal-js');
var display=comp.getPropertyValue("display");
if(display=="none"){return;}
var visibility=comp.getPropertyValue("visibility");
if(visibility=="hidden"){return;}
var position=comp.getPropertyValue("position");
if(position!="absolute"){return;}
var optimal_x=$(element_g).hasClass('mw-optimal-x');
var optimal_y=$(element_g).hasClass('mw-optimal-y');
if(optimal_x){
FunOptimalXY("width","left","right");
}
if(optimal_y){
FunOptimalXY("height","top","bottom");
}
});
}
/*Uruchamianie funkcji Common.OptimalXY*/
$(Common.OptimalXY);
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji OptimalXY*/
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Definicja dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz stylów CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
var id=element_f.getAttribute("id")
if((id)&&(id==(id_tabeli_lub_ramki+i))){
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
$('#mw-content-text .mw-parser-output').find('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){
var href=element_g.getAttribute('href');
if((href!=null)&&(href!="")){
var col="[\\s;\\(\\,]*javascript:"+fun_obiektu.replace(/\./g,"\\.")+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*";
var re_frame = new RegExp(col,'g');
var re_javascript=new RegExp("^[\\s;]*javascript:");
if((re_javascript.test(href))&&(re_frame.test(href))){
var href=element_g.getAttribute('href');
if((href!==null)&&(href!="")){
function DodajSkryptJavaScript(fun){
var re=new RegExp("javascript:"+fun.replace(/\./g,"\\.")+"\\s*\\(\\s*\\)",'g');
var href_nowe=element_g.getAttribute('href');
if(!re.test(href_nowe)){
element_g.setAttribute('href',href_nowe.replace(/[;\s]*$/g,"")+';javascript:'+fun+"()");
}
}
DodajSkryptJavaScript('Common.ScrollBarOverflow');
DodajSkryptJavaScript('Common.StickyXY');
DodajSkryptJavaScript('Common.OptimalXY');
}
}
}
});
}
}
});
}
/*Koniec dodatkowych funkcji*/
/*Uruchamianie dodatkowych funkcji dla tabel TABLE i ramek DIV nawigacyjnych.*/
$(function(){
/*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/
Common.RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','Common.collapseTable');
/*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/
Common.RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','Common.toggleNavigationBar');
});
/*Koniec uruchamiania*/
/*Definicje dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz,z_mouse){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
var tab_transition={'start':true,'run':true,'cancel':true,'end':true};
var tab_przegladarki={'':true,'webkit':true,'moz':true,'o':true};
for(var a in tab_transition){
for(var b in tab_przegladarki){
var zdarzenie=b+'transition'+a;
Common.ZdarzeniaJavaScript(css,zdarzenie,fun_zdarz);
}
}
if(z_mouse){
Common.ZdarzeniaJavaScript(css,"mouseenter",fun_zdarz);
Common.ZdarzeniaJavaScript(css,"mouseleave",fun_zdarz);
}
};
/*Koniec dodatkowych zdarzeń*/
/*Uruchamianie dodatkowych zdarzeń*/
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY',true);
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY',true);
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("body.skin-vector-search-vue .vector-sticky-header",'StickyXY',false);
});
/*Koniec uruchamiania dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('#mw-content-text .mw-parser-output').find('.strona_start .strona_środkowa > .menu > .menu_boks');
elements.parent().show();
$('#mw-content-text .mw-parser-output').find('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
$(element).attr('mw-menu-boks',"false");
});
$('#mw-content-text .mw-parser-output').find('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){
var czy_visible=$(element).css('visibility');
$(element).css('visibility',"visible");
$(element).attr('mw-menu-boks',"true");
var str=$(element).parents('.strona_prawa, .strona_lewa').first();
str.css('position','relative');
str.addClass('strona_start-nawigacja_spis');
str.removeClass('strona_start-nawigacja_boksy');
if(czy_visible=="hidden"){
$(Common.ScrollBarOverflow);
$(Common.StickyXY);
}
});
$('#mw-content-text .mw-parser-output').find('.strona_start .strona_środkowa > .menu > .menu_boks').children('.spis_treści, .boksy').each(function(i,element){
if($(element).hasClass('boksy')) $(element).attr('mw-menu-boks',"true");else if($(element).hasClass('spis_treści')) $(element).attr('mw-menu-boks',"false");
});
Common.StronaStartZdarzeniePrzycisku=function(){
var id=this;
$(id).parents('#mw-content-text .mw-parser-output .strona_start').first().find('.strona_środkowa > .menu > .menu_boks').children().each(function(i,element){
var menu_boks_zmienna=$(element).attr('mw-menu-boks');
menu_boks_zmienna=(((menu_boks_zmienna)&&(menu_boks_zmienna!=""))?menu_boks_zmienna:"false");
if(menu_boks_zmienna=="false"){
$(element).css('display',"block");
$(element).attr('mw-menu-boks','true');
}else if(menu_boks_zmienna=="true"){
$(element).css('display',"none");
$(element).attr('mw-menu-boks','false');
}
});
$(id).parents('#mw-content-text .mw-parser-output .strona_start').first().find('.strona_lewa, .strona_prawa').children('.nawigacja_boksy, .nawigacja_spis').each(function(i,element){
var menu_boks_zmienna=$(element).attr('mw-menu-boks');
menu_boks_zmienna=(((menu_boks_zmienna)&&(menu_boks_zmienna!=""))?menu_boks_zmienna:"false");
if(menu_boks_zmienna=="false"){
$(element).css('visibility',"visible");
$(element).attr('mw-menu-boks',"true");
var str=$(element).parents('.strona_prawa, .strona_lewa').first();
if($(element).hasClass('nawigacja_boksy')){
str.css('position','static');
str.addClass('strona_start-nawigacja_boksy');
str.removeClass('strona_start-nawigacja_spis');
$(Common.ScrollBarOverflow);
$(Common.OptimalXY);
}else if($(element).hasClass('nawigacja_spis')){
str.css('position','relative');
str.addClass('strona_start-nawigacja_spis');
str.removeClass('strona_start-nawigacja_boksy');
$(Common.ScrollBarOverflow);
$(Common.StickyXY);
}
}else if(menu_boks_zmienna=="true"){
$(element).css('visibility',"hidden");
$(element).attr('mw-menu-boks',"false");
}
});
}
if(Common.StronaStartZdarzeniePrzycisku)Common.ZdarzeniaJavaScript(elements,'click','StronaStartZdarzeniePrzycisku');
}
$(Common.StronaStart);
})(Common_zmienna_z_MediaWiki_Wikibooks,Common);
fvnlmd73agqh4e6zq4etd3dw11bvjy6
438995
438991
2022-08-28T18:59:51Z
Persino
2851
javascript
text/javascript
mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true );
/**/
/* Umieszczony tutaj kod JavaScript zostanie załadowany przez każdego użytkownika, podczas każdego ładowania strony.
*/
/*
* Zmienna Common.pageInfo, jego elementy, instrukcja obsługi:
* Common.pageInfo.namespace numer przestrzeni nazw (równe wgNamespaceNumber)
* Common.pageInfo.name pełna nazwa strony
* Common.pageInfo.title tytuł strony, czyli ostatnia część po '/' albo jest równe pageInfo.name, gdy nigdzie nie występuje slash
* Common.pageInfo.book tytuł książki
* Common.pageInfo.action akcja taka jaka jest w adresie URL pod "action=", w przypadku normalnego czytania strony, action jest równe "get"
* Common.pageInfo.diff null w przypadku, gdy nie porównujemy wersji, w przeciwnym wypadku wartość występującą w adresie URL
*/
/*Uzyskanie dostępu do tablicy - przestrzeni: Common, z innej strony .js*/
var Common_zmienna_z_MediaWiki_Wikibooks=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
/*Funkcja, by nie było przecieków pamięci*/
(function(Common_zmienna_z_MediaWiki_Wikibooks,Common){
/*Sprawdza, czy użytkownik ma własną zmienną Common*/
Common.IsUserCommon=function(){return ((Common_zmienna_z_MediaWiki_Wikibooks)?true:false);};
/*Funkcja zwraca zmienną Common ze strony MediaWiki:Common.js*/
Common.MediaWikiCommon=function(){return (Common.IsUserCommon()?Common_zmienna_z_MediaWiki_Wikibooks:Common);}
/*Funkcja zwraca tablicę Common użytkownika, jeżeli taką posiada, w przeciwnym wypadku zwraca undefined*/
Common.UserCommon=function(){return (Common.IsUserCommon()?Common:undefined);}
/*Funkcja zwraca Common z tej strony*/
Common.NoweCommon=function(){return Common;}
/*Funkcja zwraca Common ze strony MediaWiki:Common.js, jeżeli użytkownik posiada własne Common w jego pliku Common, w przeciwnym wypadku zwraca undefined*/
Common.StareCommon=function(){return Common_zmienna_z_MediaWiki_Wikibooks;}
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
/*Uruchamianie funkcji Common.LokowanieTopSelf*/
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen,tylko_odrejestruj){
/*
css - adres html obiektu,
zdarzenie - zdarzenie jak click,
funkcja_zdarzen - nazwa funkcji zdarzeń w starej przestrzeni Common lub nowej, jak StickyXY,
tylko_odrejestruj - czy tylko zdarzenie ma odrejestrować w starej przestrzeni Common.
*/
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((Common_zmienna_z_MediaWiki_Wikibooks)&&(Common_zmienna_z_MediaWiki_Wikibooks[funkcja_zdarzen])){
$(css).off(zdarzenie,Common_zmienna_z_MediaWiki_Wikibooks[funkcja_zdarzen]);
}
if((!tylko_odrejestruj)&&(Common)&&(Common[funkcja_zdarzen])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen]);
}
}
}
/*Funkcje w przestrzeni nazw Common*/
Common.Naglowek=function(){
/* Skrypt odpowiedzialny za wyświetlanie szablonu Nagłówek [[Szablon:Nagłówek]] */
var hideAll = document.getElementById('mójNagłówekUkryj');
var noFooter = false;
var footers = 0;
var tags = document.getElementsByTagName('div');
for (var i = 0; i < tags.length; i++) {
var el=tags[i].getAttribute("id");
if (el=='mojaStopka')
footers++;
else if (hideAll && (el=='mójNagłówek')) {
tags[i].innerHTML="";
noFooter=true;
}
}
if (noFooter) return;
var footer = document.getElementById('mojaStopka');
if ((footer !== null) && (footers==1)) {
var bodyContent = document.getElementById('bodyContent');
if (bodyContent !== null) {
var s0=document.getElementById('mojaStopka0');
var s1=document.getElementById('mojaStopka1');
if ((s1 !== null) ||
((s0 === null) && (bodyContent.innerHTML.length>8000))){
var strona=document.getElementById('strona');
if(strona!==null){
strona.appendChild(footer);
}else{
var catlinks=document.getElementById('catlinks');
if(catlinks !== null){
bodyContent.insertBefore(footer,catlinks);
}else{
bodyContent.appendChild(footer);
}
}
}
}
}
/* Koniec skryptu odpowiedzialnego za wyświetlanie szablonu Nagłówek [[Szablon:Nagłówek]] */
};
$(Common.Naglowek);
/*Informacje o danej stronie*/
Common.PageInfoInit=function(){
var _g = /_/g;
this.name = mw.config.get('wgPageName').replace(/_/g, ' ');
this.namespace = mw.config.get('wgNamespaceNumber');
var i = this.name.search(/\/[^\/]*$/g);
this.title = this.name.slice(i + 1);
this.book = this.name.replace(/\/.*/g, "");
if ( document.URL.search("//pl.wikibooks.org/w/index.php") != -1 ) {
re = /\&diff=/g;
this.diff = re.test(document.URL);
re = /\&action=[^\&]*/g;
this.action = document.URL.match(re);
if ( this.action === null ) {
this.action = 'get';
} else {
this.action = this.action[0].slice(8, this.action[0].length);
}
} else {
this.diff = null;
this.action = 'get';
}
}
Common.pageInfo = new Common.PageInfoInit();
/** Collapsible tables *********************************************************
*
* Description: Allows tables to be collapsed, showing only the header. See
* [[en:Wikipedia:NavFrame]].
* Maintainers: [[User:R. Koot]]
*/
Common.autoCollapse = 2;
Common.collapseCaption = "ukryj";
Common.expandCaption = "pokaż";
Common.collapseTable=function( tableIndex )
{
var Button = document.getElementById( "collapseButton" + tableIndex );
var Table = document.getElementById( "collapsibleTable" + tableIndex );
if ( !Table || !Button ) {
return false;
}
var Rows = Table.rows;
if ( Button.firstChild.data == Common.collapseCaption ) {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = "none";
}
Button.firstChild.data = Common.expandCaption;
} else {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = Rows[0].style.display;
}
Button.firstChild.data = Common.collapseCaption;
}
}
Common.createCollapseButtons=function()
{
var tableIndex = 0;
var NavigationBoxes = new Object();
var Tables = document.getElementsByTagName( "table" );
for ( var i = 0; i < Tables.length; i++ ) {
if ( $(Tables[i]).hasClass( "collapsible" ) ) {
/* only add button and increment count if there is a header row to work with */
var HeaderRow = Tables[i].getElementsByTagName( "tr" )[0];
if (!HeaderRow) continue;
var Header = HeaderRow.getElementsByTagName( "th" )[0];
if (!Header) continue;
NavigationBoxes[ tableIndex ] = Tables[i];
Tables[i].setAttribute( "id", "collapsibleTable" + tableIndex );
var Button = document.createElement( "span" );
var ButtonLink = document.createElement( "a" );
var ButtonText = document.createTextNode( Common.collapseCaption );
Button.style.styleFloat = "right";
Button.style.cssFloat = "right";
Button.style.fontWeight = "normal";
Button.style.textAlign = "right";
Button.style.width = "6em";
ButtonLink.style.color = Header.style.color;
ButtonLink.setAttribute( "id", "collapseButton" + tableIndex );
ButtonLink.setAttribute( "href", "javascript:Common.collapseTable(" + tableIndex + ");" );
ButtonLink.appendChild( ButtonText );
Button.appendChild( document.createTextNode( "[" ) );
Button.appendChild( ButtonLink );
Button.appendChild( document.createTextNode( "]" ) );
$(Header.childNodes[0]).has('a#collapseButton' + tableIndex).each(function(i,element){
$(element).remove();
});
Header.insertBefore( Button, Header.childNodes[0]);
tableIndex++;
}
}
for ( var i = 0; i < tableIndex; i++ ) {
if ( $(NavigationBoxes[i]).hasClass( "collapsed" ) || ( tableIndex >= Common.autoCollapse && $(NavigationBoxes[i]).hasClass( "autocollapse" ) ) ) {
Common.collapseTable( i );
}
else if ( $(NavigationBoxes[i]).hasClass( "innercollapse" ) ) {
var element = NavigationBoxes[i];
while (element = element.parentNode) {
if ( $(element).hasClass( "outercollapse" ) ) {
Common.collapseTable ( i );
break;
}
}
}
}
}
$(Common.createCollapseButtons );
/** Dynamic Navigation Bars (experimental) *************************************
*
* Description: See [[Wikipedia:NavFrame]].
* Maintainers: UNMAINTAINED
*/
// set up the words in your language
Common.NavigationBarHide = '[' + Common.collapseCaption + ']';
Common.NavigationBarShow = '[' + Common.expandCaption + ']';
// shows and hides content and picture (if available) of navigation bars
// Parameters:
// indexNavigationBar: the index of navigation bar to be toggled
Common.toggleNavigationBar=function(indexNavigationBar)
{
var NavToggle = document.getElementById("NavToggle" + indexNavigationBar);
var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);
if (!NavFrame || !NavToggle) {
return false;
}
// if shown now
if (NavToggle.firstChild.data == Common.NavigationBarHide) {
for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
if ( $(NavChild).hasClass( 'NavPic' ) ) {
NavChild.style.display = 'none';
}
if ( $(NavChild).hasClass( 'NavContent') ) {
NavChild.style.display = 'none';
}
}
NavToggle.firstChild.data = Common.NavigationBarShow;
// if hidden now
} else if (NavToggle.firstChild.data == Common.NavigationBarShow) {
for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
if ($(NavChild).hasClass( 'NavPic')) {
NavChild.style.display = 'block';
}
if ($(NavChild).hasClass( 'NavContent')) {
NavChild.style.display = 'block';
}
}
NavToggle.firstChild.data = Common.NavigationBarHide;
}
}
// adds show/hide-button to navigation bars
Common.createNavigationBarToggleButton=function()
{
var indexNavigationBar = 0;
// iterate over all < div >-elements
var divs = document.getElementsByTagName("div");
for (var i = 0; NavFrame = divs[i]; i++) {
// if found a navigation bar
if ($(NavFrame).hasClass( "NavFrame")) {
indexNavigationBar++;
var NavToggle = document.createElement("a");
NavToggle.className = 'NavToggle';
NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
NavToggle.setAttribute('href', 'javascript:Common.toggleNavigationBar(' + indexNavigationBar + ');');
var isCollapsed = $(NavFrame).hasClass( "collapsed" );
/*
* Check if any children are already hidden. This loop is here for backwards compatibility:
* the old way of making NavFrames start out collapsed was to manually add style="display:none"
* to all the NavPic/NavContent elements. Since this was bad for accessibility (no way to make
* the content visible without JavaScript support), the new recommended way is to add the class
* "collapsed" to the NavFrame itself, just like with collapsible tables.
*/
for (var NavChild = NavFrame.firstChild; NavChild != null && !isCollapsed; NavChild = NavChild.nextSibling) {
if ( $(NavChild).hasClass( 'NavPic' ) || $(NavChild).hasClass( 'NavContent' ) ) {
if ( NavChild.style.display == 'none' ) {
isCollapsed = true;
}
}
}
if (isCollapsed) {
for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
if ( $(NavChild).hasClass( 'NavPic' ) || $(NavChild).hasClass( 'NavContent' ) ) {
NavChild.style.display = 'none';
}
}
}
var NavToggleText = document.createTextNode(isCollapsed ? Common.NavigationBarShow : Common.NavigationBarHide);
NavToggle.appendChild(NavToggleText);
// Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked)
for(var j=0; j < NavFrame.childNodes.length; j++) {
if ($(NavFrame.childNodes[j]).hasClass( "NavHead")) {
$(NavFrame.childNodes[j]).children('a.NavToggle#NavToggle' + indexNavigationBar).each(function(i,element){
$(element).remove();
});
NavFrame.childNodes[j].appendChild(NavToggle);
}
}
NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
}
}
}
$(Common.createNavigationBarToggleButton );
// Wyszukiwanie Google na stronach podręczników
Common.googleSearchInitialized = false;
Common.insertGoogleSearch=function() {
if ( mw.config.get('wgNamespaceNumber') != 0 || Common.googleSearchInitialized ) {
return;
}
Common.googleSearchInitialized = true;
var google = "http://www.google.com/custom?sa=Google+Search&domains=pl.wikibooks.org/wiki/PAGE&sitesearch=pl.wikibooks.org/wiki/PAGE";
var ul = jQuery('#p-tb ul')[0];
if (!ul) {
return;
}
var link = document.createElement('a');
var book = Common.pageInfo.book;
if ( book.length == 1 || book.indexOf('++') != -1 || encodeURIComponent(book) != book ) {
google = "http://www.google.com/custom?sa=Google+Search&domains=pl.wikibooks.org/wiki/&sitesearch=pl.wikibooks.org/wiki/&q=%22PAGE%22"
}
link.href = google.replace(/PAGE/g, encodeURIComponent(book));
link.appendChild(document.createTextNode("Szukaj w podręczniku"));
var li = document.createElement('li');
li.id = "google-trick-search";
li.appendChild(link);
$(ul).children('li#google-trick-search').each(function(i,element){
$(element).remove();
});
ul.insertBefore(li, ul.firstChild);
}
$(Common.insertGoogleSearch);
/*Funkcja do liczenia szerokościm mapska przewijania w pionowego, wtedy x_box_right=="y", lub poziomego, wtedy inny parametr inny niż dla paska pionowego*/
Common.PobierzSzerokoscPaskaPrzewijania=function(x_box_right){
var div = $('<div style="width:50px;height:50px;overflow:hidden;position:absolute;top:-200px;left:-200px;"><div style="height:100px;"></div></div>');
$('body').append(div);
var w1 = $('div', div)["inner"+((x_box_right=="y")?"Width":"Height")]();
div.css('overflow-'+(x_box_right||"y"), 'scroll');
var w2 = $('div', div)["inner"+((x_box_right=="y")?"Width":"Height")]();
$(div).remove();
return (w1 - w2);
}
/*Funkcje do obsługi pasków przewijania*/
Common.ScrollBarOverflow=function(){
$('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){
/*start overflow*/
var comp=window.getComputedStyle(element_g, null);
var display=comp.getPropertyValue("display");
if(display=="none"){return;}
var overflow=comp.getPropertyValue("overflow");
var overflow_x=$(element_g).hasClass('mw-overflow-x');
if(overflow_x){
var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x"));
if((overflowX)&&(overflowX=="auto")){
element_g.classList.remove("mw-scrollbar-overflow-x");
const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false
if(hasHorizontalScrollbar){
element_g.classList.add("mw-scrollbar-overflow-x");
}
}
}
var overflow_y=$(element_g).hasClass('mw-overflow-y');
if(overflow_y){
var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y"));
if((overflowY)&&(overflowY=="auto")){
element_g.classList.remove("mw-scrollbar-overflow-y");
const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false
if(hasVerticalScrollbar){
element_g.classList.add("mw-scrollbar-overflow-y");
}
}
}
/*koniec overflow*/
});
}
/*Uruchamianie funkcji Common.ScrollBarOverflow*/
$(Common.ScrollBarOverflow);
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji Common.ScrollBarOverflow*/
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,'scroll', 'ScrollBarOverflow');
Common.ZdarzeniaJavaScript(window,'resize', 'ScrollBarOverflow');
});
/*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/
Common.StickyXY=function(){
$('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){
var comp=window.getComputedStyle(element_g, null);
function FunStickyXY(height,top,bottom,width_box,left_box,right_box,x_box,x_box_right){
var pozycje_paskow=new Array();
$(element_g).find('*').each(function(i,element){
var comp=window.getComputedStyle(element, null);
var overflow=comp.getPropertyValue("overflow");
var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x"));
var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y"));
if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){
pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft));
}
});
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header, html.client-js body.skin-timeless #mw-header-container ~ #mw-header-hack').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]+rect_sticky[top]);
});
var StickyXYTopOld=$(element_g).data('stickyXYOld-'+top);var StickyXYBottomOld=$(element_g).data('stickyXYOld-'+bottom);
if(StickyXYTopOld===undefined){
var topold_war=parseFloat(element_g.style[top]);
$(element_g).data('stickyXYOld-'+top,((!isNaN(topold_war))?topold_war:0));
}
if(StickyXYBottomOld===undefined){
var bottomold_war=parseFloat(element_g.style[bottom]);
$(element_g).data('stickyXYOld-'+bottom,((!isNaN(bottomold_war))?bottomold_war:0));
}
var topold=$(element_g).data('stickyXYOld-'+top)+height_sticky+5;
var margintop=parseFloat(comp.getPropertyValue("margin-"+top));
margintop=((!isNaN(margintop))?margintop:0);
var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom));
marginbottom=((!isNaN(marginbottom))?marginbottom:0);
var przodek_height=undefined;
element_g.style[height]="auto";
element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[top]="auto";
element_g.style[bottom]="auto";
if(width_box!=null){
element_g.style[width_box]="auto";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[left_box]="auto";
element_g.style[right_box]="0";
$(element_g).find('.mw-not-overflow-'+x_box+'.mw-overflow-'+x_box).each(function(i,element){
element.style[width_box]="auto";
element.classList.remove('mw-scrollbar-overflow-x');
element.classList.remove('mw-scrollbar-overflow-y');
});
}
/**/
var parents_node_fun=$(element_g).parents('.mw-parent-node').first();
if((parents_node_fun==null)||(parents_node_fun.length==0)){return;}
var width_rodzic=null;
var rodzic_element=undefined;
var comp_rodz;
parents_node_fun.each(function(i,element){
comp_rodz=window.getComputedStyle(element,null);
przodek_height=parseFloat(comp_rodz.getPropertyValue([height]));
width_rodzic=width_box?parseFloat(comp_rodz.getPropertyValue([width_box])):null;
rodzic_element=element;
});
var height_box_real=parseFloat(comp.getPropertyValue(height));
var rect_dziecko=element_g.getBoundingClientRect();
var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))];
var rect_rodzic;
parents_node_fun.each(function(i,element){
rect_rodzic=element.getBoundingClientRect();
});
var top_ab=rect_rodzic[top];
var bottom_ab=(wys-rect_rodzic[bottom]);
var maxheight=Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('stickyXYOld-'+bottom)+5):(Math.max(0,$(element_g).data('stickyXYOld-'+bottom)+5-bottom_ab)))+marginbottom+margintop);
element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(((maxheight>=0)?maxheight:0)*(height_box_real/rect_dziecko[height]))+"px";
element_g.style[height]="100%";
var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)));
element_g.style[top]=top_obj+"px";
element_g.style[bottom]="auto";
if(width_box!=null){
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
rodzic_element.style.position="static";
rodzic_element.style.overflow="hidden";
var width_box_real=parseFloat(comp.getPropertyValue(width_box));
var rect_dziecko=element_g.getBoundingClientRect();
if(parseInt(width_box_real)>parseInt(rect_dziecko[width_box])){
if(width_box=="width"){
element_g.classList.remove('mw-scrollbar-overflow-x');
}else{
element_g.classList.remove('mw-scrollbar-overflow-y');
}
if(rect_dziecko[width_box]>width_rodzic){
if(width_box=="width"){
element_g.classList.add('mw-scrollbar-overflow-x');
}else{
element_g.classList.add('mw-scrollbar-overflow-y');
}
}
var width_box_real=parseFloat(comp.getPropertyValue(width_box));
var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box));
margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box));
var dlugosc=(width_rodzic-margin_all);
dlugosc=((dlugosc>=0)?dlugosc:0);
element_g.style.whiteSpace="nowrap";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px";
element_g.style[width_box]=width_box_real+"px";
Common.ScrollBarOverflow();
$(element_g).find('.mw-overflow-'+x_box+'.mw-not-overflow-'+x_box+'.mw-scrollbar-overflow-'+x_box).each(function(i,element){
var comp_element=window.getComputedStyle(element, null)
element.style[width_box]=(element["scroll"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+Common.PobierzSzerokoscPaskaPrzewijania(x_box_right)+parseFloat (comp_element.getPropertyValue('padding-'+left_box))+parseFloat(comp_element.getPropertyValue('padding-'+right_box)))+"px";
element.classList.remove('mw-scrollbar-overflow-'+x_box);
});
element_g.style.whiteSpace="normal";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[width_box]="auto";
var rect_dziecko=element_g.getBoundingClientRect();
var width_box_real=parseFloat(comp.getPropertyValue(width_box));
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px";
element_g.style[width_box]=width_box_real+"px";
element_g.style[left_box]="0";
element_g.style[right_box]="auto";
rodzic_element.style.position="relative";
}else{
element_g.style.whiteSpace="nowrap";
var szerokosc_box=rect_dziecko[width_box];
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(szerokosc_box)+"px";
element_g.style[width_box]=(szerokosc_box)+"px";
Common.ScrollBarOverflow();
$(element_g).find('.mw-overflow-'+x_box+'.mw-not-overflow-'+x_box+'.mw-scrollbar-overflow-'+x_box).each(function(i,element){
var comp_element=window.getComputedStyle(element, null);
element.style[width_box]=(element["scroll"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+Common.PobierzSzerokoscPaskaPrzewijania(x_box_right)+parseFloat (comp_element.getPropertyValue('padding-'+left_box))+parseFloat(comp_element.getPropertyValue('padding-'+right_box)))+"px";
element.classList.remove('mw-scrollbar-overflow-'+x_box);
});
element_g.style.whiteSpace="normal";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[width_box]="auto";
var rect_dziecko=element_g.getBoundingClientRect();
var szerokosc_box=rect_dziecko[width_box];
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(szerokosc_box)+"px";
element_g.style[width_box]=(szerokosc_box)+"px";
var szerokosc=rect_dziecko[width_box]+parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box));
if(parseInt(szerokosc)>parseInt(width_rodzic)){
element_g.style[right_box]="0";
element_g.style[left_box]="auto";
rodzic_element.style.overflow="visible";
}else{
element_g.style[left_box]="0";
element_g.style[right_box]="auto";
rodzic_element.style.position="relative";
}
}
}
element_g.style[height]="auto";
element_g.style[height]=(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
Common.ScrollBarOverflow();
for(var i in pozycje_paskow){
pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1];
pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2];
}
}
element_g.classList.add('mw-sticky-js');
var display=comp.getPropertyValue("display");
if(display=="none"){return;}
var visibility=comp.getPropertyValue("visibility");
if(visibility=="hidden"){return;}
var position=comp.getPropertyValue("position");
if(position!="absolute"){return;}
var sticky_x=$(element_g).hasClass('mw-sticky-x');
var sticky_y=$(element_g).hasClass('mw-sticky-y');
if((sticky_x)&&(!sticky_y)){
var str=$(element_g).parents('.strona_górna, .strona_dolna').first();
if(str.hasClass('strona_dolna')){
FunStickyXY("width","left","right","height","top","bottom","y","x");
}else if(str.hasClass('strona_górna')){
FunStickyXY("width","left","right","height","bottom","top","y","x");
}
}else if((!sticky_x)&&(sticky_y)){
var str=$(element_g).parents('.strona_prawa, .strona_lewa').first();
if(str.hasClass('strona_prawa')){
FunStickyXY("height","top","bottom","width","left","right","x","y");
}else if(str.hasClass('strona_lewa')){
FunStickyXY("height","top","bottom","width","right","left","x","y");
}
}else if((sticky_x)&&(sticky_y)){
FunStickyXY("width","left","right",null);
FunStickyXY("height","top","bottom",null);
}
});
}
/*Uruchamianie funkcji Common StickyXY*/
$(Common.StickyXY);
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji Common.StickyXY*/
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,'scroll', 'StickyXY');
Common.ZdarzeniaJavaScript(window,'resize', 'StickyXY');
});
/*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/
Common.OptimalXY=function(){
$('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){
var comp=window.getComputedStyle(element_g, null);
function FunOptimalXY(width,left,right){
var pozycje_paskow=new Array();
$(element_g).find('*').each(function(i,element){
var comp=window.getComputedStyle(element, null);
var overflow=comp.getPropertyValue("overflow");
var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x"));
var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y"));
if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){
pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft));
}
});
var width_rodzic=null;
var rodzic_node;
var comp_rodz;
$(element_g).parents('.mw-parent-node').first().each(function(i,element){
comp_rodz=window.getComputedStyle(element,null);
width_rodzic=parseFloat(comp_rodz.getPropertyValue([width]));
rodzic_node=element;
});
if((width_rodzic!=null)&&(!isNaN(width_rodzic))){
element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
var width_box_real=parseFloat(comp.getPropertyValue(width));
var rect_dziecko=element_g.getBoundingClientRect();
if(width=="width"){
element_g.classList.remove('mw-scrollbar-overflow-x');
}else{
element_g.classList.remove('mw-scrollbar-overflow-y');
}
if(parseInt(width_box_real)>parseInt(rect_dziecko[width])){
var rect_dziecko=element_g.getBoundingClientRect();
if(rect_dziecko[width]>width_rodzic){
if(width=="width"){
element_g.classList.add('mw-scrollbar-overflow-x');
}else{
element_g.classList.add('mw-scrollbar-overflow-y');
}
}
var width_box_real=parseFloat(comp.getPropertyValue(width));
var margin_all=parseFloat(comp.getPropertyValue("margin-"+left))+parseFloat(comp.getPropertyValue("margin-"+right));
margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right));
var dlugosc=(width_rodzic-margin_all);
dlugosc=((dlugosc>=0)?dlugosc:0);
element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px";
}else{
element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(rect_dziecko[width])+"px";
}
var str=$(element_g).parents('.strona_prawa, .strona_lewa, .strona_górna, .strona_dolna').first();
if(!str.hasClass('strona_start-nawigacja_boksy')){
var rect_dziecko=element_g.getBoundingClientRect();
var szerokosc=rect_dziecko[width]+parseFloat(comp.getPropertyValue("margin-"+left))+parseFloat(comp.getPropertyValue("margin-"+right));
if(parseInt(szerokosc)>parseInt(width_rodzic)){
str.css('position','static');
}else{
str.css('position','relative');
}
}
}
for(var i in pozycje_paskow){
pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1];
pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2];
}
};
element_g.classList.add('mw-optimal-js');
var display=comp.getPropertyValue("display");
if(display=="none"){return;}
var visibility=comp.getPropertyValue("visibility");
if(visibility=="hidden"){return;}
var position=comp.getPropertyValue("position");
if(position!="absolute"){return;}
var optimal_x=$(element_g).hasClass('mw-optimal-x');
var optimal_y=$(element_g).hasClass('mw-optimal-y');
if(optimal_x){
FunOptimalXY("width","left","right");
}
if(optimal_y){
FunOptimalXY("height","top","bottom");
}
});
}
/*Uruchamianie funkcji Common.OptimalXY*/
$(Common.OptimalXY);
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji OptimalXY*/
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Definicja dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz stylów CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
var id=element_f.getAttribute("id")
if((id)&&(id==(id_tabeli_lub_ramki+i))){
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
$('#mw-content-text .mw-parser-output').find('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){
var href=element_g.getAttribute('href');
if((href!=null)&&(href!="")){
var col="[\\s;\\(\\,]*javascript:"+fun_obiektu.replace(/\./g,"\\.")+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*";
var re_frame = new RegExp(col,'g');
var re_javascript=new RegExp("^[\\s;]*javascript:");
if((re_javascript.test(href))&&(re_frame.test(href))){
var href=element_g.getAttribute('href');
if((href!==null)&&(href!="")){
function DodajSkryptJavaScript(fun){
var re=new RegExp("javascript:"+fun.replace(/\./g,"\\.")+"\\s*\\(\\s*\\)",'g');
var href_nowe=element_g.getAttribute('href');
if(!re.test(href_nowe)){
element_g.setAttribute('href',href_nowe.replace(/[;\s]*$/g,"")+';javascript:'+fun+"()");
}
}
DodajSkryptJavaScript('Common.ScrollBarOverflow');
DodajSkryptJavaScript('Common.StickyXY');
DodajSkryptJavaScript('Common.OptimalXY');
}
}
}
});
}
}
});
}
/*Koniec dodatkowych funkcji*/
/*Uruchamianie dodatkowych funkcji dla tabel TABLE i ramek DIV nawigacyjnych.*/
$(function(){
/*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/
Common.RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','Common.collapseTable');
/*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/
Common.RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','Common.toggleNavigationBar');
});
/*Koniec uruchamiania*/
/*Definicje dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz,z_mouse){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
var tab_transition={'start':true,'run':true,'cancel':true,'end':true};
var tab_przegladarki={'':true,'webkit':true,'moz':true,'o':true};
for(var a in tab_transition){
for(var b in tab_przegladarki){
var zdarzenie=b+'transition'+a;
Common.ZdarzeniaJavaScript(css,zdarzenie,fun_zdarz);
}
}
if(z_mouse){
Common.ZdarzeniaJavaScript(css,"mouseenter",fun_zdarz);
Common.ZdarzeniaJavaScript(css,"mouseleave",fun_zdarz);
}
};
/*Koniec dodatkowych zdarzeń*/
/*Uruchamianie dodatkowych zdarzeń*/
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY',true);
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY',true);
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("body.skin-vector-search-vue .vector-sticky-header",'StickyXY',false);
});
/*Koniec uruchamiania dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('#mw-content-text .mw-parser-output').find('.strona_start .strona_środkowa > .menu > div > .menu_boks');
elements.parent().show();
$('#mw-content-text .mw-parser-output').find('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
$(element).attr('mw-menu-boks',"false");
});
$('#mw-content-text .mw-parser-output').find('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){
var czy_visible=$(element).css('visibility');
$(element).css('visibility',"visible");
$(element).attr('mw-menu-boks',"true");
var str=$(element).parents('.strona_prawa, .strona_lewa').first();
str.css('position','relative');
str.addClass('strona_start-nawigacja_spis');
str.removeClass('strona_start-nawigacja_boksy');
if(czy_visible=="hidden"){
$(Common.ScrollBarOverflow);
$(Common.StickyXY);
}
});
$('#mw-content-text .mw-parser-output').find('.strona_start .strona_środkowa > .menu > div > .menu_boks').children('.spis_treści, .boksy').each(function(i,element){
if($(element).hasClass('boksy')) $(element).attr('mw-menu-boks',"true");else if($(element).hasClass('spis_treści')) $(element).attr('mw-menu-boks',"false");
});
Common.StronaStartZdarzeniePrzycisku=function(){
var id=this;
$(id).parents('#mw-content-text .mw-parser-output .strona_start').first().find('.strona_środkowa > .menu > div > .menu_boks').children().each(function(i,element){
var menu_boks_zmienna=$(element).attr('mw-menu-boks');
menu_boks_zmienna=(((menu_boks_zmienna)&&(menu_boks_zmienna!=""))?menu_boks_zmienna:"false");
if(menu_boks_zmienna=="false"){
$(element).css('display',"block");
$(element).attr('mw-menu-boks','true');
}else if(menu_boks_zmienna=="true"){
$(element).css('display',"none");
$(element).attr('mw-menu-boks','false');
}
});
$(id).parents('#mw-content-text .mw-parser-output .strona_start').first().find('.strona_lewa, .strona_prawa').children('.nawigacja_boksy, .nawigacja_spis').each(function(i,element){
var menu_boks_zmienna=$(element).attr('mw-menu-boks');
menu_boks_zmienna=(((menu_boks_zmienna)&&(menu_boks_zmienna!=""))?menu_boks_zmienna:"false");
if(menu_boks_zmienna=="false"){
$(element).css('visibility',"visible");
$(element).attr('mw-menu-boks',"true");
var str=$(element).parents('.strona_prawa, .strona_lewa').first();
if($(element).hasClass('nawigacja_boksy')){
str.css('position','static');
str.addClass('strona_start-nawigacja_boksy');
str.removeClass('strona_start-nawigacja_spis');
$(Common.ScrollBarOverflow);
$(Common.OptimalXY);
}else if($(element).hasClass('nawigacja_spis')){
str.css('position','relative');
str.addClass('strona_start-nawigacja_spis');
str.removeClass('strona_start-nawigacja_boksy');
$(Common.ScrollBarOverflow);
$(Common.StickyXY);
}
}else if(menu_boks_zmienna=="true"){
$(element).css('visibility',"hidden");
$(element).attr('mw-menu-boks',"false");
}
});
}
if(Common.StronaStartZdarzeniePrzycisku)Common.ZdarzeniaJavaScript(elements,'click','StronaStartZdarzeniePrzycisku');
}
$(Common.StronaStart);
})(Common_zmienna_z_MediaWiki_Wikibooks,Common);
ps11twocxcfaz2netlotgjow1j76mrq
438996
438995
2022-08-28T19:04:13Z
Persino
2851
javascript
text/javascript
mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true );
/**/
/* Umieszczony tutaj kod JavaScript zostanie załadowany przez każdego użytkownika, podczas każdego ładowania strony.
*/
/*
* Zmienna Common.pageInfo, jego elementy, instrukcja obsługi:
* Common.pageInfo.namespace numer przestrzeni nazw (równe wgNamespaceNumber)
* Common.pageInfo.name pełna nazwa strony
* Common.pageInfo.title tytuł strony, czyli ostatnia część po '/' albo jest równe pageInfo.name, gdy nigdzie nie występuje slash
* Common.pageInfo.book tytuł książki
* Common.pageInfo.action akcja taka jaka jest w adresie URL pod "action=", w przypadku normalnego czytania strony, action jest równe "get"
* Common.pageInfo.diff null w przypadku, gdy nie porównujemy wersji, w przeciwnym wypadku wartość występującą w adresie URL
*/
/*Uzyskanie dostępu do tablicy - przestrzeni: Common, z innej strony .js*/
var Common_zmienna_z_MediaWiki_Wikibooks=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
/*Funkcja, by nie było przecieków pamięci*/
(function(Common_zmienna_z_MediaWiki_Wikibooks,Common){
/*Sprawdza, czy użytkownik ma własną zmienną Common*/
Common.IsUserCommon=function(){return ((Common_zmienna_z_MediaWiki_Wikibooks)?true:false);};
/*Funkcja zwraca zmienną Common ze strony MediaWiki:Common.js*/
Common.MediaWikiCommon=function(){return (Common.IsUserCommon()?Common_zmienna_z_MediaWiki_Wikibooks:Common);}
/*Funkcja zwraca tablicę Common użytkownika, jeżeli taką posiada, w przeciwnym wypadku zwraca undefined*/
Common.UserCommon=function(){return (Common.IsUserCommon()?Common:undefined);}
/*Funkcja zwraca Common z tej strony*/
Common.NoweCommon=function(){return Common;}
/*Funkcja zwraca Common ze strony MediaWiki:Common.js, jeżeli użytkownik posiada własne Common w jego pliku Common, w przeciwnym wypadku zwraca undefined*/
Common.StareCommon=function(){return Common_zmienna_z_MediaWiki_Wikibooks;}
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
/*Uruchamianie funkcji Common.LokowanieTopSelf*/
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen,tylko_odrejestruj){
/*
css - adres html obiektu,
zdarzenie - zdarzenie jak click,
funkcja_zdarzen - nazwa funkcji zdarzeń w starej przestrzeni Common lub nowej, jak StickyXY,
tylko_odrejestruj - czy tylko zdarzenie ma odrejestrować w starej przestrzeni Common.
*/
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((Common_zmienna_z_MediaWiki_Wikibooks)&&(Common_zmienna_z_MediaWiki_Wikibooks[funkcja_zdarzen])){
$(css).off(zdarzenie,Common_zmienna_z_MediaWiki_Wikibooks[funkcja_zdarzen]);
}
if((!tylko_odrejestruj)&&(Common)&&(Common[funkcja_zdarzen])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen]);
}
}
}
/*Funkcje w przestrzeni nazw Common*/
Common.Naglowek=function(){
/* Skrypt odpowiedzialny za wyświetlanie szablonu Nagłówek [[Szablon:Nagłówek]] */
var hideAll = document.getElementById('mójNagłówekUkryj');
var noFooter = false;
var footers = 0;
var tags = document.getElementsByTagName('div');
for (var i = 0; i < tags.length; i++) {
var el=tags[i].getAttribute("id");
if (el=='mojaStopka')
footers++;
else if (hideAll && (el=='mójNagłówek')) {
tags[i].innerHTML="";
noFooter=true;
}
}
if (noFooter) return;
var footer = document.getElementById('mojaStopka');
if ((footer !== null) && (footers==1)) {
var bodyContent = document.getElementById('bodyContent');
if (bodyContent !== null) {
var s0=document.getElementById('mojaStopka0');
var s1=document.getElementById('mojaStopka1');
if ((s1 !== null) ||
((s0 === null) && (bodyContent.innerHTML.length>8000))){
var strona=document.getElementById('strona');
if(strona!==null){
strona.appendChild(footer);
}else{
var catlinks=document.getElementById('catlinks');
if(catlinks !== null){
bodyContent.insertBefore(footer,catlinks);
}else{
bodyContent.appendChild(footer);
}
}
}
}
}
/* Koniec skryptu odpowiedzialnego za wyświetlanie szablonu Nagłówek [[Szablon:Nagłówek]] */
};
$(Common.Naglowek);
/*Informacje o danej stronie*/
Common.PageInfoInit=function(){
var _g = /_/g;
this.name = mw.config.get('wgPageName').replace(/_/g, ' ');
this.namespace = mw.config.get('wgNamespaceNumber');
var i = this.name.search(/\/[^\/]*$/g);
this.title = this.name.slice(i + 1);
this.book = this.name.replace(/\/.*/g, "");
if ( document.URL.search("//pl.wikibooks.org/w/index.php") != -1 ) {
re = /\&diff=/g;
this.diff = re.test(document.URL);
re = /\&action=[^\&]*/g;
this.action = document.URL.match(re);
if ( this.action === null ) {
this.action = 'get';
} else {
this.action = this.action[0].slice(8, this.action[0].length);
}
} else {
this.diff = null;
this.action = 'get';
}
}
Common.pageInfo = new Common.PageInfoInit();
/** Collapsible tables *********************************************************
*
* Description: Allows tables to be collapsed, showing only the header. See
* [[en:Wikipedia:NavFrame]].
* Maintainers: [[User:R. Koot]]
*/
Common.autoCollapse = 2;
Common.collapseCaption = "ukryj";
Common.expandCaption = "pokaż";
Common.collapseTable=function( tableIndex )
{
var Button = document.getElementById( "collapseButton" + tableIndex );
var Table = document.getElementById( "collapsibleTable" + tableIndex );
if ( !Table || !Button ) {
return false;
}
var Rows = Table.rows;
if ( Button.firstChild.data == Common.collapseCaption ) {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = "none";
}
Button.firstChild.data = Common.expandCaption;
} else {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = Rows[0].style.display;
}
Button.firstChild.data = Common.collapseCaption;
}
}
Common.createCollapseButtons=function()
{
var tableIndex = 0;
var NavigationBoxes = new Object();
var Tables = document.getElementsByTagName( "table" );
for ( var i = 0; i < Tables.length; i++ ) {
if ( $(Tables[i]).hasClass( "collapsible" ) ) {
/* only add button and increment count if there is a header row to work with */
var HeaderRow = Tables[i].getElementsByTagName( "tr" )[0];
if (!HeaderRow) continue;
var Header = HeaderRow.getElementsByTagName( "th" )[0];
if (!Header) continue;
NavigationBoxes[ tableIndex ] = Tables[i];
Tables[i].setAttribute( "id", "collapsibleTable" + tableIndex );
var Button = document.createElement( "span" );
var ButtonLink = document.createElement( "a" );
var ButtonText = document.createTextNode( Common.collapseCaption );
Button.style.styleFloat = "right";
Button.style.cssFloat = "right";
Button.style.fontWeight = "normal";
Button.style.textAlign = "right";
Button.style.width = "6em";
ButtonLink.style.color = Header.style.color;
ButtonLink.setAttribute( "id", "collapseButton" + tableIndex );
ButtonLink.setAttribute( "href", "javascript:Common.collapseTable(" + tableIndex + ");" );
ButtonLink.appendChild( ButtonText );
Button.appendChild( document.createTextNode( "[" ) );
Button.appendChild( ButtonLink );
Button.appendChild( document.createTextNode( "]" ) );
$(Header.childNodes[0]).has('a#collapseButton' + tableIndex).each(function(i,element){
$(element).remove();
});
Header.insertBefore( Button, Header.childNodes[0]);
tableIndex++;
}
}
for ( var i = 0; i < tableIndex; i++ ) {
if ( $(NavigationBoxes[i]).hasClass( "collapsed" ) || ( tableIndex >= Common.autoCollapse && $(NavigationBoxes[i]).hasClass( "autocollapse" ) ) ) {
Common.collapseTable( i );
}
else if ( $(NavigationBoxes[i]).hasClass( "innercollapse" ) ) {
var element = NavigationBoxes[i];
while (element = element.parentNode) {
if ( $(element).hasClass( "outercollapse" ) ) {
Common.collapseTable ( i );
break;
}
}
}
}
}
$(Common.createCollapseButtons );
/** Dynamic Navigation Bars (experimental) *************************************
*
* Description: See [[Wikipedia:NavFrame]].
* Maintainers: UNMAINTAINED
*/
// set up the words in your language
Common.NavigationBarHide = '[' + Common.collapseCaption + ']';
Common.NavigationBarShow = '[' + Common.expandCaption + ']';
// shows and hides content and picture (if available) of navigation bars
// Parameters:
// indexNavigationBar: the index of navigation bar to be toggled
Common.toggleNavigationBar=function(indexNavigationBar)
{
var NavToggle = document.getElementById("NavToggle" + indexNavigationBar);
var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);
if (!NavFrame || !NavToggle) {
return false;
}
// if shown now
if (NavToggle.firstChild.data == Common.NavigationBarHide) {
for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
if ( $(NavChild).hasClass( 'NavPic' ) ) {
NavChild.style.display = 'none';
}
if ( $(NavChild).hasClass( 'NavContent') ) {
NavChild.style.display = 'none';
}
}
NavToggle.firstChild.data = Common.NavigationBarShow;
// if hidden now
} else if (NavToggle.firstChild.data == Common.NavigationBarShow) {
for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
if ($(NavChild).hasClass( 'NavPic')) {
NavChild.style.display = 'block';
}
if ($(NavChild).hasClass( 'NavContent')) {
NavChild.style.display = 'block';
}
}
NavToggle.firstChild.data = Common.NavigationBarHide;
}
}
// adds show/hide-button to navigation bars
Common.createNavigationBarToggleButton=function()
{
var indexNavigationBar = 0;
// iterate over all < div >-elements
var divs = document.getElementsByTagName("div");
for (var i = 0; NavFrame = divs[i]; i++) {
// if found a navigation bar
if ($(NavFrame).hasClass( "NavFrame")) {
indexNavigationBar++;
var NavToggle = document.createElement("a");
NavToggle.className = 'NavToggle';
NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
NavToggle.setAttribute('href', 'javascript:Common.toggleNavigationBar(' + indexNavigationBar + ');');
var isCollapsed = $(NavFrame).hasClass( "collapsed" );
/*
* Check if any children are already hidden. This loop is here for backwards compatibility:
* the old way of making NavFrames start out collapsed was to manually add style="display:none"
* to all the NavPic/NavContent elements. Since this was bad for accessibility (no way to make
* the content visible without JavaScript support), the new recommended way is to add the class
* "collapsed" to the NavFrame itself, just like with collapsible tables.
*/
for (var NavChild = NavFrame.firstChild; NavChild != null && !isCollapsed; NavChild = NavChild.nextSibling) {
if ( $(NavChild).hasClass( 'NavPic' ) || $(NavChild).hasClass( 'NavContent' ) ) {
if ( NavChild.style.display == 'none' ) {
isCollapsed = true;
}
}
}
if (isCollapsed) {
for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
if ( $(NavChild).hasClass( 'NavPic' ) || $(NavChild).hasClass( 'NavContent' ) ) {
NavChild.style.display = 'none';
}
}
}
var NavToggleText = document.createTextNode(isCollapsed ? Common.NavigationBarShow : Common.NavigationBarHide);
NavToggle.appendChild(NavToggleText);
// Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked)
for(var j=0; j < NavFrame.childNodes.length; j++) {
if ($(NavFrame.childNodes[j]).hasClass( "NavHead")) {
$(NavFrame.childNodes[j]).children('a.NavToggle#NavToggle' + indexNavigationBar).each(function(i,element){
$(element).remove();
});
NavFrame.childNodes[j].appendChild(NavToggle);
}
}
NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
}
}
}
$(Common.createNavigationBarToggleButton );
// Wyszukiwanie Google na stronach podręczników
Common.googleSearchInitialized = false;
Common.insertGoogleSearch=function() {
if ( mw.config.get('wgNamespaceNumber') != 0 || Common.googleSearchInitialized ) {
return;
}
Common.googleSearchInitialized = true;
var google = "http://www.google.com/custom?sa=Google+Search&domains=pl.wikibooks.org/wiki/PAGE&sitesearch=pl.wikibooks.org/wiki/PAGE";
var ul = jQuery('#p-tb ul')[0];
if (!ul) {
return;
}
var link = document.createElement('a');
var book = Common.pageInfo.book;
if ( book.length == 1 || book.indexOf('++') != -1 || encodeURIComponent(book) != book ) {
google = "http://www.google.com/custom?sa=Google+Search&domains=pl.wikibooks.org/wiki/&sitesearch=pl.wikibooks.org/wiki/&q=%22PAGE%22"
}
link.href = google.replace(/PAGE/g, encodeURIComponent(book));
link.appendChild(document.createTextNode("Szukaj w podręczniku"));
var li = document.createElement('li');
li.id = "google-trick-search";
li.appendChild(link);
$(ul).children('li#google-trick-search').each(function(i,element){
$(element).remove();
});
ul.insertBefore(li, ul.firstChild);
}
$(Common.insertGoogleSearch);
/*Funkcja do liczenia szerokościm mapska przewijania w pionowego, wtedy x_box_right=="y", lub poziomego, wtedy inny parametr inny niż dla paska pionowego*/
Common.PobierzSzerokoscPaskaPrzewijania=function(x_box_right){
var div = $('<div style="width:50px;height:50px;overflow:hidden;position:absolute;top:-200px;left:-200px;"><div style="height:100px;"></div></div>');
$('body').append(div);
var w1 = $('div', div)["inner"+((x_box_right=="y")?"Width":"Height")]();
div.css('overflow-'+(x_box_right||"y"), 'scroll');
var w2 = $('div', div)["inner"+((x_box_right=="y")?"Width":"Height")]();
$(div).remove();
return (w1 - w2);
}
/*Funkcje do obsługi pasków przewijania*/
Common.ScrollBarOverflow=function(){
$('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){
/*start overflow*/
var comp=window.getComputedStyle(element_g, null);
var display=comp.getPropertyValue("display");
if(display=="none"){return;}
var overflow=comp.getPropertyValue("overflow");
var overflow_x=$(element_g).hasClass('mw-overflow-x');
if(overflow_x){
var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x"));
if((overflowX)&&(overflowX=="auto")){
element_g.classList.remove("mw-scrollbar-overflow-x");
const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false
if(hasHorizontalScrollbar){
element_g.classList.add("mw-scrollbar-overflow-x");
}
}
}
var overflow_y=$(element_g).hasClass('mw-overflow-y');
if(overflow_y){
var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y"));
if((overflowY)&&(overflowY=="auto")){
element_g.classList.remove("mw-scrollbar-overflow-y");
const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false
if(hasVerticalScrollbar){
element_g.classList.add("mw-scrollbar-overflow-y");
}
}
}
/*koniec overflow*/
});
}
/*Uruchamianie funkcji Common.ScrollBarOverflow*/
$(Common.ScrollBarOverflow);
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji Common.ScrollBarOverflow*/
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,'scroll', 'ScrollBarOverflow');
Common.ZdarzeniaJavaScript(window,'resize', 'ScrollBarOverflow');
});
/*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/
Common.StickyXY=function(){
$('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){
var comp=window.getComputedStyle(element_g, null);
function FunStickyXY(height,top,bottom,width_box,left_box,right_box,x_box,x_box_right){
var pozycje_paskow=new Array();
$(element_g).find('*').each(function(i,element){
var comp=window.getComputedStyle(element, null);
var overflow=comp.getPropertyValue("overflow");
var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x"));
var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y"));
if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){
pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft));
}
});
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header, html.client-js body.skin-timeless #mw-header-container ~ #mw-header-hack').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]+rect_sticky[top]);
});
var StickyXYTopOld=$(element_g).data('stickyXYOld-'+top);var StickyXYBottomOld=$(element_g).data('stickyXYOld-'+bottom);
if(StickyXYTopOld===undefined){
var topold_war=parseFloat(element_g.style[top]);
$(element_g).data('stickyXYOld-'+top,((!isNaN(topold_war))?topold_war:0));
}
if(StickyXYBottomOld===undefined){
var bottomold_war=parseFloat(element_g.style[bottom]);
$(element_g).data('stickyXYOld-'+bottom,((!isNaN(bottomold_war))?bottomold_war:0));
}
var topold=$(element_g).data('stickyXYOld-'+top)+height_sticky+5;
var margintop=parseFloat(comp.getPropertyValue("margin-"+top));
margintop=((!isNaN(margintop))?margintop:0);
var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom));
marginbottom=((!isNaN(marginbottom))?marginbottom:0);
var przodek_height=undefined;
element_g.style[height]="auto";
element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[top]="auto";
element_g.style[bottom]="auto";
if(width_box!=null){
element_g.style[width_box]="auto";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[left_box]="auto";
element_g.style[right_box]="0";
$(element_g).find('.mw-not-overflow-'+x_box+'.mw-overflow-'+x_box).each(function(i,element){
element.style[width_box]="auto";
element.classList.remove('mw-scrollbar-overflow-x');
element.classList.remove('mw-scrollbar-overflow-y');
});
}
/**/
var parents_node_fun=$(element_g).parents('.mw-parent-node').first();
if((parents_node_fun==null)||(parents_node_fun.length==0)){return;}
var width_rodzic=null;
var rodzic_element=undefined;
var comp_rodz;
parents_node_fun.each(function(i,element){
comp_rodz=window.getComputedStyle(element,null);
przodek_height=parseFloat(comp_rodz.getPropertyValue([height]));
width_rodzic=width_box?parseFloat(comp_rodz.getPropertyValue([width_box])):null;
rodzic_element=element;
});
var height_box_real=parseFloat(comp.getPropertyValue(height));
var rect_dziecko=element_g.getBoundingClientRect();
var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))];
var rect_rodzic;
parents_node_fun.each(function(i,element){
rect_rodzic=element.getBoundingClientRect();
});
var top_ab=rect_rodzic[top];
var bottom_ab=(wys-rect_rodzic[bottom]);
var maxheight=Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('stickyXYOld-'+bottom)+5):(Math.max(0,$(element_g).data('stickyXYOld-'+bottom)+5-bottom_ab)))+marginbottom+margintop);
element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(((maxheight>=0)?maxheight:0)*(height_box_real/rect_dziecko[height]))+"px";
element_g.style[height]="100%";
var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)));
element_g.style[top]=top_obj+"px";
element_g.style[bottom]="auto";
if(width_box!=null){
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
rodzic_element.style.position="static";
rodzic_element.style.overflow="hidden";
var width_box_real=parseFloat(comp.getPropertyValue(width_box));
var rect_dziecko=element_g.getBoundingClientRect();
if(parseInt(width_box_real)>parseInt(rect_dziecko[width_box])){
if(width_box=="width"){
element_g.classList.remove('mw-scrollbar-overflow-x');
}else{
element_g.classList.remove('mw-scrollbar-overflow-y');
}
if(rect_dziecko[width_box]>width_rodzic){
if(width_box=="width"){
element_g.classList.add('mw-scrollbar-overflow-x');
}else{
element_g.classList.add('mw-scrollbar-overflow-y');
}
}
var width_box_real=parseFloat(comp.getPropertyValue(width_box));
var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box));
margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box));
var dlugosc=(width_rodzic-margin_all);
dlugosc=((dlugosc>=0)?dlugosc:0);
element_g.style.whiteSpace="nowrap";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px";
element_g.style[width_box]=width_box_real+"px";
Common.ScrollBarOverflow();
$(element_g).find('.mw-overflow-'+x_box+'.mw-not-overflow-'+x_box+'.mw-scrollbar-overflow-'+x_box).each(function(i,element){
var comp_element=window.getComputedStyle(element, null)
element.style[width_box]=(element["scroll"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+Common.PobierzSzerokoscPaskaPrzewijania(x_box_right)+parseFloat (comp_element.getPropertyValue('padding-'+left_box))+parseFloat(comp_element.getPropertyValue('padding-'+right_box)))+"px";
element.classList.remove('mw-scrollbar-overflow-'+x_box);
});
element_g.style.whiteSpace="normal";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[width_box]="auto";
var rect_dziecko=element_g.getBoundingClientRect();
var width_box_real=parseFloat(comp.getPropertyValue(width_box));
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px";
element_g.style[width_box]=width_box_real+"px";
element_g.style[left_box]="0";
element_g.style[right_box]="auto";
rodzic_element.style.position="relative";
}else{
element_g.style.whiteSpace="nowrap";
var szerokosc_box=rect_dziecko[width_box];
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(szerokosc_box)+"px";
element_g.style[width_box]=(szerokosc_box)+"px";
Common.ScrollBarOverflow();
$(element_g).find('.mw-overflow-'+x_box+'.mw-not-overflow-'+x_box+'.mw-scrollbar-overflow-'+x_box).each(function(i,element){
var comp_element=window.getComputedStyle(element, null);
element.style[width_box]=(element["scroll"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+Common.PobierzSzerokoscPaskaPrzewijania(x_box_right)+parseFloat (comp_element.getPropertyValue('padding-'+left_box))+parseFloat(comp_element.getPropertyValue('padding-'+right_box)))+"px";
element.classList.remove('mw-scrollbar-overflow-'+x_box);
});
element_g.style.whiteSpace="normal";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[width_box]="auto";
var rect_dziecko=element_g.getBoundingClientRect();
var szerokosc_box=rect_dziecko[width_box];
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(szerokosc_box)+"px";
element_g.style[width_box]=(szerokosc_box)+"px";
var szerokosc=rect_dziecko[width_box]+parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box));
if(parseInt(szerokosc)>parseInt(width_rodzic)){
element_g.style[right_box]="0";
element_g.style[left_box]="auto";
rodzic_element.style.overflow="visible";
}else{
element_g.style[left_box]="0";
element_g.style[right_box]="auto";
rodzic_element.style.position="relative";
}
}
}
element_g.style[height]="auto";
element_g.style[height]=(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
Common.ScrollBarOverflow();
for(var i in pozycje_paskow){
pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1];
pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2];
}
}
element_g.classList.add('mw-sticky-js');
var display=comp.getPropertyValue("display");
if(display=="none"){return;}
var visibility=comp.getPropertyValue("visibility");
if(visibility=="hidden"){return;}
var position=comp.getPropertyValue("position");
if(position!="absolute"){return;}
var sticky_x=$(element_g).hasClass('mw-sticky-x');
var sticky_y=$(element_g).hasClass('mw-sticky-y');
if((sticky_x)&&(!sticky_y)){
var str=$(element_g).parents('.strona_górna, .strona_dolna').first();
if(str.hasClass('strona_dolna')){
FunStickyXY("width","left","right","height","top","bottom","y","x");
}else if(str.hasClass('strona_górna')){
FunStickyXY("width","left","right","height","bottom","top","y","x");
}
}else if((!sticky_x)&&(sticky_y)){
var str=$(element_g).parents('.strona_prawa, .strona_lewa').first();
if(str.hasClass('strona_prawa')){
FunStickyXY("height","top","bottom","width","left","right","x","y");
}else if(str.hasClass('strona_lewa')){
FunStickyXY("height","top","bottom","width","right","left","x","y");
}
}else if((sticky_x)&&(sticky_y)){
FunStickyXY("width","left","right",null);
FunStickyXY("height","top","bottom",null);
}
});
}
/*Uruchamianie funkcji Common StickyXY*/
$(Common.StickyXY);
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji Common.StickyXY*/
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,'scroll', 'StickyXY');
Common.ZdarzeniaJavaScript(window,'resize', 'StickyXY');
});
/*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/
Common.OptimalXY=function(){
$('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){
var comp=window.getComputedStyle(element_g, null);
function FunOptimalXY(width,left,right){
var pozycje_paskow=new Array();
$(element_g).find('*').each(function(i,element){
var comp=window.getComputedStyle(element, null);
var overflow=comp.getPropertyValue("overflow");
var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x"));
var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y"));
if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){
pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft));
}
});
var width_rodzic=null;
var rodzic_node;
var comp_rodz;
$(element_g).parents('.mw-parent-node').first().each(function(i,element){
comp_rodz=window.getComputedStyle(element,null);
width_rodzic=parseFloat(comp_rodz.getPropertyValue([width]));
rodzic_node=element;
});
if((width_rodzic!=null)&&(!isNaN(width_rodzic))){
element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
var width_box_real=parseFloat(comp.getPropertyValue(width));
var rect_dziecko=element_g.getBoundingClientRect();
if(width=="width"){
element_g.classList.remove('mw-scrollbar-overflow-x');
}else{
element_g.classList.remove('mw-scrollbar-overflow-y');
}
if(parseInt(width_box_real)>parseInt(rect_dziecko[width])){
var rect_dziecko=element_g.getBoundingClientRect();
if(rect_dziecko[width]>width_rodzic){
if(width=="width"){
element_g.classList.add('mw-scrollbar-overflow-x');
}else{
element_g.classList.add('mw-scrollbar-overflow-y');
}
}
var width_box_real=parseFloat(comp.getPropertyValue(width));
var margin_all=parseFloat(comp.getPropertyValue("margin-"+left))+parseFloat(comp.getPropertyValue("margin-"+right));
margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right));
var dlugosc=(width_rodzic-margin_all);
dlugosc=((dlugosc>=0)?dlugosc:0);
element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px";
}else{
element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(rect_dziecko[width])+"px";
}
var str=$(element_g).parents('.strona_prawa, .strona_lewa, .strona_górna, .strona_dolna').first();
if(!str.hasClass('strona_start-nawigacja_boksy')){
var rect_dziecko=element_g.getBoundingClientRect();
var szerokosc=rect_dziecko[width]+parseFloat(comp.getPropertyValue("margin-"+left))+parseFloat(comp.getPropertyValue("margin-"+right));
if(parseInt(szerokosc)>parseInt(width_rodzic)){
str.css('position','static');
}else{
str.css('position','relative');
}
}
}
for(var i in pozycje_paskow){
pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1];
pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2];
}
};
element_g.classList.add('mw-optimal-js');
var display=comp.getPropertyValue("display");
if(display=="none"){return;}
var visibility=comp.getPropertyValue("visibility");
if(visibility=="hidden"){return;}
var position=comp.getPropertyValue("position");
if(position!="absolute"){return;}
var optimal_x=$(element_g).hasClass('mw-optimal-x');
var optimal_y=$(element_g).hasClass('mw-optimal-y');
if(optimal_x){
FunOptimalXY("width","left","right");
}
if(optimal_y){
FunOptimalXY("height","top","bottom");
}
});
}
/*Uruchamianie funkcji Common.OptimalXY*/
$(Common.OptimalXY);
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji OptimalXY*/
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Definicja dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz stylów CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
var id=element_f.getAttribute("id")
if((id)&&(id==(id_tabeli_lub_ramki+i))){
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
$('#mw-content-text .mw-parser-output').find('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){
var href=element_g.getAttribute('href');
if((href!=null)&&(href!="")){
var col="[\\s;\\(\\,]*javascript:"+fun_obiektu.replace(/\./g,"\\.")+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*";
var re_frame = new RegExp(col,'g');
var re_javascript=new RegExp("^[\\s;]*javascript:");
if((re_javascript.test(href))&&(re_frame.test(href))){
var href=element_g.getAttribute('href');
if((href!==null)&&(href!="")){
function DodajSkryptJavaScript(fun){
var re=new RegExp("javascript:"+fun.replace(/\./g,"\\.")+"\\s*\\(\\s*\\)",'g');
var href_nowe=element_g.getAttribute('href');
if(!re.test(href_nowe)){
element_g.setAttribute('href',href_nowe.replace(/[;\s]*$/g,"")+';javascript:'+fun+"()");
}
}
DodajSkryptJavaScript('Common.ScrollBarOverflow');
DodajSkryptJavaScript('Common.StickyXY');
DodajSkryptJavaScript('Common.OptimalXY');
}
}
}
});
}
}
});
}
/*Koniec dodatkowych funkcji*/
/*Uruchamianie dodatkowych funkcji dla tabel TABLE i ramek DIV nawigacyjnych.*/
$(function(){
/*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/
Common.RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','Common.collapseTable');
/*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/
Common.RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','Common.toggleNavigationBar');
});
/*Koniec uruchamiania*/
/*Definicje dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz,z_mouse){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
var tab_transition={'start':true,'run':true,'cancel':true,'end':true};
var tab_przegladarki={'':true,'webkit':true,'moz':true,'o':true};
for(var a in tab_transition){
for(var b in tab_przegladarki){
var zdarzenie=b+'transition'+a;
Common.ZdarzeniaJavaScript(css,zdarzenie,fun_zdarz);
}
}
if(z_mouse){
Common.ZdarzeniaJavaScript(css,"mouseenter",fun_zdarz);
Common.ZdarzeniaJavaScript(css,"mouseleave",fun_zdarz);
}
};
/*Koniec dodatkowych zdarzeń*/
/*Uruchamianie dodatkowych zdarzeń*/
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY',true);
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY',true);
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("body.skin-vector-search-vue .vector-sticky-header",'StickyXY',false);
});
/*Koniec uruchamiania dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('#mw-content-text .mw-parser-output').find('.strona_start .strona_środkowa > .menu > div > .menu_boks');
elements.parents('.menu').first().show();
$('#mw-content-text .mw-parser-output').find('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
$(element).attr('mw-menu-boks',"false");
});
$('#mw-content-text .mw-parser-output').find('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){
var czy_visible=$(element).css('visibility');
$(element).css('visibility',"visible");
$(element).attr('mw-menu-boks',"true");
var str=$(element).parents('.strona_prawa, .strona_lewa').first();
str.css('position','relative');
str.addClass('strona_start-nawigacja_spis');
str.removeClass('strona_start-nawigacja_boksy');
if(czy_visible=="hidden"){
$(Common.ScrollBarOverflow);
$(Common.StickyXY);
}
});
$('#mw-content-text .mw-parser-output').find('.strona_start .strona_środkowa > .menu > div > .menu_boks').children('.spis_treści, .boksy').each(function(i,element){
if($(element).hasClass('boksy')) $(element).attr('mw-menu-boks',"true");else if($(element).hasClass('spis_treści')) $(element).attr('mw-menu-boks',"false");
});
Common.StronaStartZdarzeniePrzycisku=function(){
var id=this;
$(id).parents('#mw-content-text .mw-parser-output .strona_start').first().find('.strona_środkowa > .menu > div > .menu_boks').children().each(function(i,element){
var menu_boks_zmienna=$(element).attr('mw-menu-boks');
menu_boks_zmienna=(((menu_boks_zmienna)&&(menu_boks_zmienna!=""))?menu_boks_zmienna:"false");
if(menu_boks_zmienna=="false"){
$(element).css('display',"block");
$(element).attr('mw-menu-boks','true');
}else if(menu_boks_zmienna=="true"){
$(element).css('display',"none");
$(element).attr('mw-menu-boks','false');
}
});
$(id).parents('#mw-content-text .mw-parser-output .strona_start').first().find('.strona_lewa, .strona_prawa').children('.nawigacja_boksy, .nawigacja_spis').each(function(i,element){
var menu_boks_zmienna=$(element).attr('mw-menu-boks');
menu_boks_zmienna=(((menu_boks_zmienna)&&(menu_boks_zmienna!=""))?menu_boks_zmienna:"false");
if(menu_boks_zmienna=="false"){
$(element).css('visibility',"visible");
$(element).attr('mw-menu-boks',"true");
var str=$(element).parents('.strona_prawa, .strona_lewa').first();
if($(element).hasClass('nawigacja_boksy')){
str.css('position','static');
str.addClass('strona_start-nawigacja_boksy');
str.removeClass('strona_start-nawigacja_spis');
$(Common.ScrollBarOverflow);
$(Common.OptimalXY);
}else if($(element).hasClass('nawigacja_spis')){
str.css('position','relative');
str.addClass('strona_start-nawigacja_spis');
str.removeClass('strona_start-nawigacja_boksy');
$(Common.ScrollBarOverflow);
$(Common.StickyXY);
}
}else if(menu_boks_zmienna=="true"){
$(element).css('visibility',"hidden");
$(element).attr('mw-menu-boks',"false");
}
});
}
if(Common.StronaStartZdarzeniePrzycisku)Common.ZdarzeniaJavaScript(elements,'click','StronaStartZdarzeniePrzycisku');
}
$(Common.StronaStart);
})(Common_zmienna_z_MediaWiki_Wikibooks,Common);
aw70cx43cvzk5ivfz419zghwq3bbsel
439012
438996
2022-08-28T21:08:54Z
Persino
2851
javascript
text/javascript
mw.loader.load( '//pl.wikibooks.org/w/index.php?action=raw&ctype=text/javascript&title=Wikipedysta:Persino/Gadget-StronicowyParser.js', 'text/javascript', true );
/**/
/* Umieszczony tutaj kod JavaScript zostanie załadowany przez każdego użytkownika, podczas każdego ładowania strony.
*/
/*
* Zmienna Common.pageInfo, jego elementy, instrukcja obsługi:
* Common.pageInfo.namespace numer przestrzeni nazw (równe wgNamespaceNumber)
* Common.pageInfo.name pełna nazwa strony
* Common.pageInfo.title tytuł strony, czyli ostatnia część po '/' albo jest równe pageInfo.name, gdy nigdzie nie występuje slash
* Common.pageInfo.book tytuł książki
* Common.pageInfo.action akcja taka jaka jest w adresie URL pod "action=", w przypadku normalnego czytania strony, action jest równe "get"
* Common.pageInfo.diff null w przypadku, gdy nie porównujemy wersji, w przeciwnym wypadku wartość występującą w adresie URL
*/
/*Uzyskanie dostępu do tablicy - przestrzeni: Common, z innej strony .js*/
var Common_zmienna_z_MediaWiki_Wikibooks=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
/*Funkcja, by nie było przecieków pamięci*/
(function(Common_zmienna_z_MediaWiki_Wikibooks,Common){
/*Sprawdza, czy użytkownik ma własną zmienną Common*/
Common.IsUserCommon=function(){return ((Common_zmienna_z_MediaWiki_Wikibooks)?true:false);};
/*Funkcja zwraca zmienną Common ze strony MediaWiki:Common.js*/
Common.MediaWikiCommon=function(){return (Common.IsUserCommon()?Common_zmienna_z_MediaWiki_Wikibooks:Common);}
/*Funkcja zwraca tablicę Common użytkownika, jeżeli taką posiada, w przeciwnym wypadku zwraca undefined*/
Common.UserCommon=function(){return (Common.IsUserCommon()?Common:undefined);}
/*Funkcja zwraca Common z tej strony*/
Common.NoweCommon=function(){return Common;}
/*Funkcja zwraca Common ze strony MediaWiki:Common.js, jeżeli użytkownik posiada własne Common w jego pliku Common, w przeciwnym wypadku zwraca undefined*/
Common.StareCommon=function(){return Common_zmienna_z_MediaWiki_Wikibooks;}
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
/*Uruchamianie funkcji Common.LokowanieTopSelf*/
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen,tylko_odrejestruj){
/*
css - adres html obiektu,
zdarzenie - zdarzenie jak click,
funkcja_zdarzen - nazwa funkcji zdarzeń w starej przestrzeni Common lub nowej, jak StickyXY,
tylko_odrejestruj - czy tylko zdarzenie ma odrejestrować w starej przestrzeni Common.
*/
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((Common_zmienna_z_MediaWiki_Wikibooks)&&(Common_zmienna_z_MediaWiki_Wikibooks[funkcja_zdarzen])){
$(css).off(zdarzenie,Common_zmienna_z_MediaWiki_Wikibooks[funkcja_zdarzen]);
}
if((!tylko_odrejestruj)&&(Common)&&(Common[funkcja_zdarzen])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen]);
}
}
}
/*Funkcje w przestrzeni nazw Common*/
Common.Naglowek=function(){
/* Skrypt odpowiedzialny za wyświetlanie szablonu Nagłówek [[Szablon:Nagłówek]] */
var hideAll = document.getElementById('mójNagłówekUkryj');
var noFooter = false;
var footers = 0;
var tags = document.getElementsByTagName('div');
for (var i = 0; i < tags.length; i++) {
var el=tags[i].getAttribute("id");
if (el=='mojaStopka')
footers++;
else if (hideAll && (el=='mójNagłówek')) {
tags[i].innerHTML="";
noFooter=true;
}
}
if (noFooter) return;
var footer = document.getElementById('mojaStopka');
if ((footer !== null) && (footers==1)) {
var bodyContent = document.getElementById('bodyContent');
if (bodyContent !== null) {
var s0=document.getElementById('mojaStopka0');
var s1=document.getElementById('mojaStopka1');
if ((s1 !== null) ||
((s0 === null) && (bodyContent.innerHTML.length>8000))){
var strona=document.getElementById('strona');
if(strona!==null){
strona.appendChild(footer);
}else{
var catlinks=document.getElementById('catlinks');
if(catlinks !== null){
bodyContent.insertBefore(footer,catlinks);
}else{
bodyContent.appendChild(footer);
}
}
}
}
}
/* Koniec skryptu odpowiedzialnego za wyświetlanie szablonu Nagłówek [[Szablon:Nagłówek]] */
};
$(Common.Naglowek);
/*Informacje o danej stronie*/
Common.PageInfoInit=function(){
var _g = /_/g;
this.name = mw.config.get('wgPageName').replace(/_/g, ' ');
this.namespace = mw.config.get('wgNamespaceNumber');
var i = this.name.search(/\/[^\/]*$/g);
this.title = this.name.slice(i + 1);
this.book = this.name.replace(/\/.*/g, "");
if ( document.URL.search("//pl.wikibooks.org/w/index.php") != -1 ) {
re = /\&diff=/g;
this.diff = re.test(document.URL);
re = /\&action=[^\&]*/g;
this.action = document.URL.match(re);
if ( this.action === null ) {
this.action = 'get';
} else {
this.action = this.action[0].slice(8, this.action[0].length);
}
} else {
this.diff = null;
this.action = 'get';
}
}
Common.pageInfo = new Common.PageInfoInit();
/** Collapsible tables *********************************************************
*
* Description: Allows tables to be collapsed, showing only the header. See
* [[en:Wikipedia:NavFrame]].
* Maintainers: [[User:R. Koot]]
*/
Common.autoCollapse = 2;
Common.collapseCaption = "ukryj";
Common.expandCaption = "pokaż";
Common.collapseTable=function( tableIndex )
{
var Button = document.getElementById( "collapseButton" + tableIndex );
var Table = document.getElementById( "collapsibleTable" + tableIndex );
if ( !Table || !Button ) {
return false;
}
var Rows = Table.rows;
if ( Button.firstChild.data == Common.collapseCaption ) {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = "none";
}
Button.firstChild.data = Common.expandCaption;
} else {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = Rows[0].style.display;
}
Button.firstChild.data = Common.collapseCaption;
}
}
Common.createCollapseButtons=function()
{
var tableIndex = 0;
var NavigationBoxes = new Object();
var Tables = document.getElementsByTagName( "table" );
for ( var i = 0; i < Tables.length; i++ ) {
if ( $(Tables[i]).hasClass( "collapsible" ) ) {
/* only add button and increment count if there is a header row to work with */
var HeaderRow = Tables[i].getElementsByTagName( "tr" )[0];
if (!HeaderRow) continue;
var Header = HeaderRow.getElementsByTagName( "th" )[0];
if (!Header) continue;
NavigationBoxes[ tableIndex ] = Tables[i];
Tables[i].setAttribute( "id", "collapsibleTable" + tableIndex );
var Button = document.createElement( "span" );
var ButtonLink = document.createElement( "a" );
var ButtonText = document.createTextNode( Common.collapseCaption );
Button.style.styleFloat = "right";
Button.style.cssFloat = "right";
Button.style.fontWeight = "normal";
Button.style.textAlign = "right";
Button.style.width = "6em";
ButtonLink.style.color = Header.style.color;
ButtonLink.setAttribute( "id", "collapseButton" + tableIndex );
ButtonLink.setAttribute( "href", "javascript:Common.collapseTable(" + tableIndex + ");" );
ButtonLink.appendChild( ButtonText );
Button.appendChild( document.createTextNode( "[" ) );
Button.appendChild( ButtonLink );
Button.appendChild( document.createTextNode( "]" ) );
$(Header.childNodes[0]).has('a#collapseButton' + tableIndex).each(function(i,element){
$(element).remove();
});
Header.insertBefore( Button, Header.childNodes[0]);
tableIndex++;
}
}
for ( var i = 0; i < tableIndex; i++ ) {
if ( $(NavigationBoxes[i]).hasClass( "collapsed" ) || ( tableIndex >= Common.autoCollapse && $(NavigationBoxes[i]).hasClass( "autocollapse" ) ) ) {
Common.collapseTable( i );
}
else if ( $(NavigationBoxes[i]).hasClass( "innercollapse" ) ) {
var element = NavigationBoxes[i];
while (element = element.parentNode) {
if ( $(element).hasClass( "outercollapse" ) ) {
Common.collapseTable ( i );
break;
}
}
}
}
}
$(Common.createCollapseButtons );
/** Dynamic Navigation Bars (experimental) *************************************
*
* Description: See [[Wikipedia:NavFrame]].
* Maintainers: UNMAINTAINED
*/
// set up the words in your language
Common.NavigationBarHide = '[' + Common.collapseCaption + ']';
Common.NavigationBarShow = '[' + Common.expandCaption + ']';
// shows and hides content and picture (if available) of navigation bars
// Parameters:
// indexNavigationBar: the index of navigation bar to be toggled
Common.toggleNavigationBar=function(indexNavigationBar)
{
var NavToggle = document.getElementById("NavToggle" + indexNavigationBar);
var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);
if (!NavFrame || !NavToggle) {
return false;
}
// if shown now
if (NavToggle.firstChild.data == Common.NavigationBarHide) {
for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
if ( $(NavChild).hasClass( 'NavPic' ) ) {
NavChild.style.display = 'none';
}
if ( $(NavChild).hasClass( 'NavContent') ) {
NavChild.style.display = 'none';
}
}
NavToggle.firstChild.data = Common.NavigationBarShow;
// if hidden now
} else if (NavToggle.firstChild.data == Common.NavigationBarShow) {
for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
if ($(NavChild).hasClass( 'NavPic')) {
NavChild.style.display = 'block';
}
if ($(NavChild).hasClass( 'NavContent')) {
NavChild.style.display = 'block';
}
}
NavToggle.firstChild.data = Common.NavigationBarHide;
}
}
// adds show/hide-button to navigation bars
Common.createNavigationBarToggleButton=function()
{
var indexNavigationBar = 0;
// iterate over all < div >-elements
var divs = document.getElementsByTagName("div");
for (var i = 0; NavFrame = divs[i]; i++) {
// if found a navigation bar
if ($(NavFrame).hasClass( "NavFrame")) {
indexNavigationBar++;
var NavToggle = document.createElement("a");
NavToggle.className = 'NavToggle';
NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
NavToggle.setAttribute('href', 'javascript:Common.toggleNavigationBar(' + indexNavigationBar + ');');
var isCollapsed = $(NavFrame).hasClass( "collapsed" );
/*
* Check if any children are already hidden. This loop is here for backwards compatibility:
* the old way of making NavFrames start out collapsed was to manually add style="display:none"
* to all the NavPic/NavContent elements. Since this was bad for accessibility (no way to make
* the content visible without JavaScript support), the new recommended way is to add the class
* "collapsed" to the NavFrame itself, just like with collapsible tables.
*/
for (var NavChild = NavFrame.firstChild; NavChild != null && !isCollapsed; NavChild = NavChild.nextSibling) {
if ( $(NavChild).hasClass( 'NavPic' ) || $(NavChild).hasClass( 'NavContent' ) ) {
if ( NavChild.style.display == 'none' ) {
isCollapsed = true;
}
}
}
if (isCollapsed) {
for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
if ( $(NavChild).hasClass( 'NavPic' ) || $(NavChild).hasClass( 'NavContent' ) ) {
NavChild.style.display = 'none';
}
}
}
var NavToggleText = document.createTextNode(isCollapsed ? Common.NavigationBarShow : Common.NavigationBarHide);
NavToggle.appendChild(NavToggleText);
// Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked)
for(var j=0; j < NavFrame.childNodes.length; j++) {
if ($(NavFrame.childNodes[j]).hasClass( "NavHead")) {
$(NavFrame.childNodes[j]).children('a.NavToggle#NavToggle' + indexNavigationBar).each(function(i,element){
$(element).remove();
});
NavFrame.childNodes[j].appendChild(NavToggle);
}
}
NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
}
}
}
$(Common.createNavigationBarToggleButton );
// Wyszukiwanie Google na stronach podręczników
Common.googleSearchInitialized = false;
Common.insertGoogleSearch=function() {
if ( mw.config.get('wgNamespaceNumber') != 0 || Common.googleSearchInitialized ) {
return;
}
Common.googleSearchInitialized = true;
var google = "http://www.google.com/custom?sa=Google+Search&domains=pl.wikibooks.org/wiki/PAGE&sitesearch=pl.wikibooks.org/wiki/PAGE";
var ul = jQuery('#p-tb ul')[0];
if (!ul) {
return;
}
var link = document.createElement('a');
var book = Common.pageInfo.book;
if ( book.length == 1 || book.indexOf('++') != -1 || encodeURIComponent(book) != book ) {
google = "http://www.google.com/custom?sa=Google+Search&domains=pl.wikibooks.org/wiki/&sitesearch=pl.wikibooks.org/wiki/&q=%22PAGE%22"
}
link.href = google.replace(/PAGE/g, encodeURIComponent(book));
link.appendChild(document.createTextNode("Szukaj w podręczniku"));
var li = document.createElement('li');
li.id = "google-trick-search";
li.appendChild(link);
$(ul).children('li#google-trick-search').each(function(i,element){
$(element).remove();
});
ul.insertBefore(li, ul.firstChild);
}
$(Common.insertGoogleSearch);
/*Funkcja do liczenia szerokościm mapska przewijania w pionowego, wtedy x_box_right=="y", lub poziomego, wtedy inny parametr inny niż dla paska pionowego*/
Common.PobierzSzerokoscPaskaPrzewijania=function(x_box_right){
var div = $('<div style="width:50px;height:50px;overflow:hidden;position:absolute;top:-200px;left:-200px;"><div style="height:100px;"></div></div>');
$('body').append(div);
var w1 = $('div', div)["inner"+((x_box_right=="y")?"Width":"Height")]();
div.css('overflow-'+(x_box_right||"y"), 'scroll');
var w2 = $('div', div)["inner"+((x_box_right=="y")?"Width":"Height")]();
$(div).remove();
return (w1 - w2);
}
/*Funkcje do obsługi pasków przewijania*/
Common.ScrollBarOverflow=function(){
$('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){
/*start overflow*/
var comp=window.getComputedStyle(element_g, null);
var display=comp.getPropertyValue("display");
if(display=="none"){return;}
var overflow=comp.getPropertyValue("overflow");
var overflow_x=$(element_g).hasClass('mw-overflow-x');
if(overflow_x){
var overflowX=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x"));
if((overflowX)&&(overflowX=="auto")){
element_g.classList.remove("mw-scrollbar-overflow-x");
const hasHorizontalScrollbar = element_g.scrollWidth > element_g.clientWidth; // true lub false
if(hasHorizontalScrollbar){
element_g.classList.add("mw-scrollbar-overflow-x");
}
}
}
var overflow_y=$(element_g).hasClass('mw-overflow-y');
if(overflow_y){
var overflowY=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y"));
if((overflowY)&&(overflowY=="auto")){
element_g.classList.remove("mw-scrollbar-overflow-y");
const hasVerticalScrollbar = element_g.scrollHeight > element_g.clientHeight; // true lub false
if(hasVerticalScrollbar){
element_g.classList.add("mw-scrollbar-overflow-y");
}
}
}
/*koniec overflow*/
});
}
/*Uruchamianie funkcji Common.ScrollBarOverflow*/
$(Common.ScrollBarOverflow);
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji Common.ScrollBarOverflow*/
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,'scroll', 'ScrollBarOverflow');
Common.ZdarzeniaJavaScript(window,'resize', 'ScrollBarOverflow');
});
/*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/
Common.StickyXY=function(){
$('*.mw-sticky-x, *.mw-sticky-y').each(function(i,element_g){
var comp=window.getComputedStyle(element_g, null);
function FunStickyXY(height,top,bottom,width_box,left_box,right_box,x_box,x_box_right){
var pozycje_paskow=new Array();
$(element_g).find('*').each(function(i,element){
var comp=window.getComputedStyle(element, null);
var overflow=comp.getPropertyValue("overflow");
var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x"));
var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y"));
if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){
pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft));
}
});
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header, html.client-js body.skin-timeless #mw-header-container ~ #mw-header-hack').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]+rect_sticky[top]);
});
var StickyXYTopOld=$(element_g).data('stickyXYOld-'+top);var StickyXYBottomOld=$(element_g).data('stickyXYOld-'+bottom);
if(StickyXYTopOld===undefined){
var topold_war=parseFloat(element_g.style[top]);
$(element_g).data('stickyXYOld-'+top,((!isNaN(topold_war))?topold_war:0));
}
if(StickyXYBottomOld===undefined){
var bottomold_war=parseFloat(element_g.style[bottom]);
$(element_g).data('stickyXYOld-'+bottom,((!isNaN(bottomold_war))?bottomold_war:0));
}
var topold=$(element_g).data('stickyXYOld-'+top)+height_sticky+5;
var margintop=parseFloat(comp.getPropertyValue("margin-"+top));
margintop=((!isNaN(margintop))?margintop:0);
var marginbottom=parseFloat(comp.getPropertyValue("margin-"+bottom));
marginbottom=((!isNaN(marginbottom))?marginbottom:0);
var przodek_height=undefined;
element_g.style[height]="auto";
element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[top]="auto";
element_g.style[bottom]="auto";
if(width_box!=null){
element_g.style[width_box]="auto";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[left_box]="auto";
element_g.style[right_box]="0";
$(element_g).find('.mw-not-overflow-'+x_box+'.mw-overflow-'+x_box).each(function(i,element){
element.style[width_box]="auto";
element.classList.remove('mw-scrollbar-overflow-x');
element.classList.remove('mw-scrollbar-overflow-y');
});
}
/**/
var parents_node_fun=$(element_g).parents('.mw-parent-node').first();
if((parents_node_fun==null)||(parents_node_fun.length==0)){return;}
var width_rodzic=null;
var rodzic_element=undefined;
var comp_rodz;
parents_node_fun.each(function(i,element){
comp_rodz=window.getComputedStyle(element,null);
przodek_height=parseFloat(comp_rodz.getPropertyValue([height]));
width_rodzic=width_box?parseFloat(comp_rodz.getPropertyValue([width_box])):null;
rodzic_element=element;
});
var height_box_real=parseFloat(comp.getPropertyValue(height));
var rect_dziecko=element_g.getBoundingClientRect();
var wys=document.documentElement["client"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))];
var rect_rodzic;
parents_node_fun.each(function(i,element){
rect_rodzic=element.getBoundingClientRect();
});
var top_ab=rect_rodzic[top];
var bottom_ab=(wys-rect_rodzic[bottom]);
var maxheight=Math.min(przodek_height,wys-((rect_rodzic[top]>=0)?(rect_rodzic[top]):(0))-((bottom_ab>=0)?(bottom_ab):(0)))-(((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)))+((bottom_ab<=0)?($(element_g).data('stickyXYOld-'+bottom)+5):(Math.max(0,$(element_g).data('stickyXYOld-'+bottom)+5-bottom_ab)))+marginbottom+margintop);
element_g.style["max"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(((maxheight>=0)?maxheight:0)*(height_box_real/rect_dziecko[height]))+"px";
element_g.style[height]="100%";
var top_obj=(((top_ab>=0)?0:(-top_ab)))+((top_ab<=0)?(topold):(Math.max(0,topold-top_ab)));
element_g.style[top]=top_obj+"px";
element_g.style[bottom]="auto";
if(width_box!=null){
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
rodzic_element.style.position="static";
rodzic_element.style.overflow="hidden";
var width_box_real=parseFloat(comp.getPropertyValue(width_box));
var rect_dziecko=element_g.getBoundingClientRect();
if(parseInt(width_box_real)>parseInt(rect_dziecko[width_box])){
if(width_box=="width"){
element_g.classList.remove('mw-scrollbar-overflow-x');
}else{
element_g.classList.remove('mw-scrollbar-overflow-y');
}
if(rect_dziecko[width_box]>width_rodzic){
if(width_box=="width"){
element_g.classList.add('mw-scrollbar-overflow-x');
}else{
element_g.classList.add('mw-scrollbar-overflow-y');
}
}
var width_box_real=parseFloat(comp.getPropertyValue(width_box));
var margin_all=parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box));
margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left_box))+parseFloat(comp_rodz.getPropertyValue("padding-"+right_box));
var dlugosc=(width_rodzic-margin_all);
dlugosc=((dlugosc>=0)?dlugosc:0);
element_g.style.whiteSpace="nowrap";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px";
element_g.style[width_box]=width_box_real+"px";
Common.ScrollBarOverflow();
$(element_g).find('.mw-overflow-'+x_box+'.mw-not-overflow-'+x_box+'.mw-scrollbar-overflow-'+x_box).each(function(i,element){
var comp_element=window.getComputedStyle(element, null)
element.style[width_box]=(element["scroll"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+Common.PobierzSzerokoscPaskaPrzewijania(x_box_right)+parseFloat (comp_element.getPropertyValue('padding-'+left_box))+parseFloat(comp_element.getPropertyValue('padding-'+right_box)))+"px";
element.classList.remove('mw-scrollbar-overflow-'+x_box);
});
element_g.style.whiteSpace="normal";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[width_box]="auto";
var rect_dziecko=element_g.getBoundingClientRect();
var width_box_real=parseFloat(comp.getPropertyValue(width_box));
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width_box]))+"px";
element_g.style[width_box]=width_box_real+"px";
element_g.style[left_box]="0";
element_g.style[right_box]="auto";
rodzic_element.style.position="relative";
}else{
element_g.style.whiteSpace="nowrap";
var szerokosc_box=rect_dziecko[width_box];
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(szerokosc_box)+"px";
element_g.style[width_box]=(szerokosc_box)+"px";
Common.ScrollBarOverflow();
$(element_g).find('.mw-overflow-'+x_box+'.mw-not-overflow-'+x_box+'.mw-scrollbar-overflow-'+x_box).each(function(i,element){
var comp_element=window.getComputedStyle(element, null);
element.style[width_box]=(element["scroll"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+Common.PobierzSzerokoscPaskaPrzewijania(x_box_right)+parseFloat (comp_element.getPropertyValue('padding-'+left_box))+parseFloat(comp_element.getPropertyValue('padding-'+right_box)))+"px";
element.classList.remove('mw-scrollbar-overflow-'+x_box);
});
element_g.style.whiteSpace="normal";
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
element_g.style[width_box]="auto";
var rect_dziecko=element_g.getBoundingClientRect();
var szerokosc_box=rect_dziecko[width_box];
element_g.style["max"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(szerokosc_box)+"px";
element_g.style[width_box]=(szerokosc_box)+"px";
var szerokosc=rect_dziecko[width_box]+parseFloat(comp.getPropertyValue("margin-"+left_box))+parseFloat(comp.getPropertyValue("margin-"+right_box));
if(parseInt(szerokosc)>parseInt(width_rodzic)){
element_g.style[right_box]="0";
element_g.style[left_box]="auto";
rodzic_element.style.overflow="visible";
}else{
element_g.style[left_box]="0";
element_g.style[right_box]="auto";
rodzic_element.style.position="relative";
}
}
}
element_g.style[height]="auto";
element_g.style[height]=(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
Common.ScrollBarOverflow();
for(var i in pozycje_paskow){
pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1];
pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2];
}
}
element_g.classList.add('mw-sticky-js');
var display=comp.getPropertyValue("display");
if(display=="none"){return;}
var visibility=comp.getPropertyValue("visibility");
if(visibility=="hidden"){return;}
var position=comp.getPropertyValue("position");
if(position!="absolute"){return;}
var sticky_x=$(element_g).hasClass('mw-sticky-x');
var sticky_y=$(element_g).hasClass('mw-sticky-y');
if((sticky_x)&&(!sticky_y)){
var str=$(element_g).parents('.strona_górna, .strona_dolna').first();
if(str.hasClass('strona_dolna')){
FunStickyXY("width","left","right","height","top","bottom","y","x");
}else if(str.hasClass('strona_górna')){
FunStickyXY("width","left","right","height","bottom","top","y","x");
}
}else if((!sticky_x)&&(sticky_y)){
var str=$(element_g).parents('.strona_prawa, .strona_lewa').first();
if(str.hasClass('strona_prawa')){
FunStickyXY("height","top","bottom","width","left","right","x","y");
}else if(str.hasClass('strona_lewa')){
FunStickyXY("height","top","bottom","width","right","left","x","y");
}
}else if((sticky_x)&&(sticky_y)){
FunStickyXY("width","left","right",null);
FunStickyXY("height","top","bottom",null);
}
});
}
/*Uruchamianie funkcji Common StickyXY*/
$(Common.StickyXY);
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji Common.StickyXY*/
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,'scroll', 'StickyXY');
Common.ZdarzeniaJavaScript(window,'resize', 'StickyXY');
});
/*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/
Common.OptimalXY=function(){
$('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){
var comp=window.getComputedStyle(element_g, null);
function FunOptimalXY(width,left,right){
var pozycje_paskow=new Array();
$(element_g).find('*').each(function(i,element){
var comp=window.getComputedStyle(element, null);
var overflow=comp.getPropertyValue("overflow");
var overflow_x=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-x"));
var overflow_y=(((overflow)&&(overflow!=""))?overflow:comp.getPropertyValue("overflow-y"));
if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){
pozycje_paskow.push(new Array(element,element.scrollTop,element.scrollLeft));
}
});
var width_rodzic=null;
var rodzic_node;
var comp_rodz;
$(element_g).parents('.mw-parent-node').first().each(function(i,element){
comp_rodz=window.getComputedStyle(element,null);
width_rodzic=parseFloat(comp_rodz.getPropertyValue([width]));
rodzic_node=element;
});
if((width_rodzic!=null)&&(!isNaN(width_rodzic))){
element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="none";
var width_box_real=parseFloat(comp.getPropertyValue(width));
var rect_dziecko=element_g.getBoundingClientRect();
if(width=="width"){
element_g.classList.remove('mw-scrollbar-overflow-x');
}else{
element_g.classList.remove('mw-scrollbar-overflow-y');
}
if(parseInt(width_box_real)>parseInt(rect_dziecko[width])){
var rect_dziecko=element_g.getBoundingClientRect();
if(rect_dziecko[width]>width_rodzic){
if(width=="width"){
element_g.classList.add('mw-scrollbar-overflow-x');
}else{
element_g.classList.add('mw-scrollbar-overflow-y');
}
}
var width_box_real=parseFloat(comp.getPropertyValue(width));
var margin_all=parseFloat(comp.getPropertyValue("margin-"+left))+parseFloat(comp.getPropertyValue("margin-"+right));
margin_all+=parseFloat(comp_rodz.getPropertyValue("padding-"+left))+parseFloat(comp_rodz.getPropertyValue("padding-"+right));
var dlugosc=(width_rodzic-margin_all);
dlugosc=((dlugosc>=0)?dlugosc:0);
element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(dlugosc*(width_box_real/rect_dziecko[width]))+"px";
}else{
element_g.style["max"+(width.replace(/^(.)/g,function(s){return s.toUpperCase();}))]=(rect_dziecko[width])+"px";
}
var str=$(element_g).parents('.strona_prawa, .strona_lewa, .strona_górna, .strona_dolna').first();
if(!str.hasClass('strona_start-nawigacja_boksy')){
var rect_dziecko=element_g.getBoundingClientRect();
var szerokosc=rect_dziecko[width]+parseFloat(comp.getPropertyValue("margin-"+left))+parseFloat(comp.getPropertyValue("margin-"+right));
if(parseInt(szerokosc)>parseInt(width_rodzic)){
str.css('position','static');
}else{
str.css('position','relative');
}
}
}
for(var i in pozycje_paskow){
pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1];
pozycje_paskow[i][0].scrollLeft=pozycje_paskow[i][2];
}
};
element_g.classList.add('mw-optimal-js');
var display=comp.getPropertyValue("display");
if(display=="none"){return;}
var visibility=comp.getPropertyValue("visibility");
if(visibility=="hidden"){return;}
var position=comp.getPropertyValue("position");
if(position!="absolute"){return;}
var optimal_x=$(element_g).hasClass('mw-optimal-x');
var optimal_y=$(element_g).hasClass('mw-optimal-y');
if(optimal_x){
FunOptimalXY("width","left","right");
}
if(optimal_y){
FunOptimalXY("height","top","bottom");
}
});
}
/*Uruchamianie funkcji Common.OptimalXY*/
$(Common.OptimalXY);
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji OptimalXY*/
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Definicja dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz stylów CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
var id=element_f.getAttribute("id")
if((id)&&(id==(id_tabeli_lub_ramki+i))){
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
$('#mw-content-text .mw-parser-output').find('*.mw-overflow-x a#'+id_nazwa_a+i+', *.mw-overflow-y a#'+id_nazwa_a+i).each(function(j,element_g){
var href=element_g.getAttribute('href');
if((href!=null)&&(href!="")){
var col="[\\s;\\(\\,]*javascript:"+fun_obiektu.replace(/\./g,"\\.")+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*";
var re_frame = new RegExp(col,'g');
var re_javascript=new RegExp("^[\\s;]*javascript:");
if((re_javascript.test(href))&&(re_frame.test(href))){
var href=element_g.getAttribute('href');
if((href!==null)&&(href!="")){
function DodajSkryptJavaScript(fun){
var re=new RegExp("javascript:"+fun.replace(/\./g,"\\.")+"\\s*\\(\\s*\\)",'g');
var href_nowe=element_g.getAttribute('href');
if(!re.test(href_nowe)){
element_g.setAttribute('href',href_nowe.replace(/[;\s]*$/g,"")+';javascript:'+fun+"()");
}
}
DodajSkryptJavaScript('Common.ScrollBarOverflow');
DodajSkryptJavaScript('Common.StickyXY');
DodajSkryptJavaScript('Common.OptimalXY');
}
}
}
});
}
}
});
}
/*Koniec dodatkowych funkcji*/
/*Uruchamianie dodatkowych funkcji dla tabel TABLE i ramek DIV nawigacyjnych.*/
$(function(){
/*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:Common.js*/
Common.RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','Common.collapseTable');
/*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:Common.js*/
Common.RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','Common.toggleNavigationBar');
});
/*Koniec uruchamiania*/
/*Definicje dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz,z_mouse){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
var tab_transition={'start':true,'run':true,'cancel':true,'end':true};
var tab_przegladarki={'':true,'webkit':true,'moz':true,'o':true};
for(var a in tab_transition){
for(var b in tab_przegladarki){
var zdarzenie=b+'transition'+a;
Common.ZdarzeniaJavaScript(css,zdarzenie,fun_zdarz);
}
}
if(z_mouse){
Common.ZdarzeniaJavaScript(css,"mouseenter",fun_zdarz);
Common.ZdarzeniaJavaScript(css,"mouseleave",fun_zdarz);
}
};
/*Koniec dodatkowych zdarzeń*/
/*Uruchamianie dodatkowych zdarzeń*/
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY',true);
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY',true);
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("body.skin-vector-search-vue .vector-sticky-header",'StickyXY',false);
});
/*Koniec uruchamiania dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('#mw-content-text .mw-parser-output').find('.strona_start .strona_środkowa > .menu > div > .menu_boks');
elements.parents('.menu').show();
$('#mw-content-text .mw-parser-output').find('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
$(element).attr('mw-menu-boks',"false");
});
$('#mw-content-text .mw-parser-output').find('.strona_start').find('.strona_lewa .nawigacja_spis, .strona_prawa .nawigacja_spis').each(function(i,element){
var czy_visible=$(element).css('visibility');
$(element).css('visibility',"visible");
$(element).attr('mw-menu-boks',"true");
var str=$(element).parents('.strona_prawa, .strona_lewa').first();
str.css('position','relative');
str.addClass('strona_start-nawigacja_spis');
str.removeClass('strona_start-nawigacja_boksy');
if(czy_visible=="hidden"){
$(Common.ScrollBarOverflow);
$(Common.StickyXY);
}
});
$('#mw-content-text .mw-parser-output').find('.strona_start .strona_środkowa > .menu > div > .menu_boks').children('.spis_treści, .boksy').each(function(i,element){
if($(element).hasClass('boksy')) $(element).attr('mw-menu-boks',"true");else if($(element).hasClass('spis_treści')) $(element).attr('mw-menu-boks',"false");
});
Common.StronaStartZdarzeniePrzycisku=function(){
var id=this;
$(id).parents('#mw-content-text .mw-parser-output .strona_start').first().find('.strona_środkowa > .menu > div > .menu_boks').children().each(function(i,element){
var menu_boks_zmienna=$(element).attr('mw-menu-boks');
menu_boks_zmienna=(((menu_boks_zmienna)&&(menu_boks_zmienna!=""))?menu_boks_zmienna:"false");
if(menu_boks_zmienna=="false"){
$(element).css('display',"block");
$(element).attr('mw-menu-boks','true');
}else if(menu_boks_zmienna=="true"){
$(element).css('display',"none");
$(element).attr('mw-menu-boks','false');
}
});
$(id).parents('#mw-content-text .mw-parser-output .strona_start').first().find('.strona_lewa, .strona_prawa').children('.nawigacja_boksy, .nawigacja_spis').each(function(i,element){
var menu_boks_zmienna=$(element).attr('mw-menu-boks');
menu_boks_zmienna=(((menu_boks_zmienna)&&(menu_boks_zmienna!=""))?menu_boks_zmienna:"false");
if(menu_boks_zmienna=="false"){
$(element).css('visibility',"visible");
$(element).attr('mw-menu-boks',"true");
var str=$(element).parents('.strona_prawa, .strona_lewa').first();
if($(element).hasClass('nawigacja_boksy')){
str.css('position','static');
str.addClass('strona_start-nawigacja_boksy');
str.removeClass('strona_start-nawigacja_spis');
$(Common.ScrollBarOverflow);
$(Common.OptimalXY);
}else if($(element).hasClass('nawigacja_spis')){
str.css('position','relative');
str.addClass('strona_start-nawigacja_spis');
str.removeClass('strona_start-nawigacja_boksy');
$(Common.ScrollBarOverflow);
$(Common.StickyXY);
}
}else if(menu_boks_zmienna=="true"){
$(element).css('visibility',"hidden");
$(element).attr('mw-menu-boks',"false");
}
});
}
if(Common.StronaStartZdarzeniePrzycisku)Common.ZdarzeniaJavaScript(elements,'click','StronaStartZdarzeniePrzycisku');
}
$(Common.StronaStart);
})(Common_zmienna_z_MediaWiki_Wikibooks,Common);
ndpqo4kt23sfijvzm7nu7y14ro1r6qt