Wikibooks
plwikibooks
https://pl.wikibooks.org/wiki/Wikibooks:Strona_g%C5%82%C3%B3wna
MediaWiki 1.39.0-wmf.23
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
Ubuntu/Tekst
0
30845
437364
414765
2022-08-09T19:32:24Z
Adam majewski
1978
/* Narzędzia */ sudo apt-get update sudo apt-get install gedit-plugins
wikitext
text/x-wiki
''Gedit'' jest domyślnym edytorem tekstu dla środowiska graficznego ''GNOME''.<br>
[[File:Gedit screenshot (en).png|thumb|right|Gedit]]
[[File:Ubuntu_10.04_gedit1.png|right|400px]]
==Uruchamianie ==
Można go uruchomić z poziomu [[Ubuntu/Pierwszy rzut oka na system#Panel_g.C5.82.C3.B3wny_.28Dash.29|Dasha]], wyszukując ''Edytor tekstu''.<br>
Często jednak trzeba go uruchomiać '''w Terminalu z prawami administratora''', jeżeli na przykład trzeba edytować<br>
pliki konfiguracyjne, do których nie ma dostępu zwykły użytkownik.<br>
Załóżmy, że chcesz ręcznie zmienić nazwę swojego komputera. Wydaj polecenie:<br>
sudo gedit /etc/hostname
Komenda ''sudo'' postawiona przed ''gedit'' daje prawa zarezerwowane dla administratora.<br>
Załóżmy że chcesz edytować plik "''frex.txt''", który nie jest plikiem konfiguracyjnym.<br>
Plik ten znajduje się w katalogu ''Dokumenty''. Aby go edytować '''jako zwykły użytkownik''' wpisz w Terminalu:<br>
cd Dokumenty
aby przejść do katalogu ''Dokumenty'', następnie wpisz:<br>
gedit frex.txt
W tym momencie otwiera się plik tekstowy ''frex.txt'' w edytorze.<br>
== Edytowanie plików ==
Gedit ma '''podświetlanie składni''' dla wielu języków programowania:
* podstawowe<ref>[https://wiki.gnome.org/Projects/GtkSourceView/LanguageDefinitions Podstawowe definicje języków GtkSourceView]</ref>
* dodatkowe <ref>[https://wiki.gnome.org/Projects/GtkSourceView/LanguageDefinitions dodatkowe definicje języków Gnome]</ref>
Zaznacznie/edytowanie kolumn ( column mode) jest możliwe w trybie edycji w wielu miejscach , poprzez wbudowaną wtyczkę <ref>[https://askubuntu.com/questions/1126156/how-to-select-a-column-or-block-of-text-in-gedit-3-28-1 askubuntu question: how-to-select-a-column-or-block-of-text-in-gedit-3-28-1]
</ref>
==Ustawienia==
Edytowanie schematów kolorów<ref>[https://ubuntuhandbook.org/index.php/2021/07/text-editor-unreadable-ubuntu-dark-mode/ ubuntuhand book : text-editor-unreadable-ubuntu-dark-mode]</ref>
sudo gedit /usr/share/gtksourceview-4/styles/classic.xml
Sprawdzamy ustawienia<ref>[https://askubuntu.com/questions/375049/where-are-gedits-preferences ask ubuntu question" where-are-gedits-preferences]</ref> za pomocą gsettings
gsettings list-recursively | grep -i gedit
Przykładowy wynik:
<pre>
org.gnome.gedit.preferences.ui statusbar-visible true
org.gnome.gedit.preferences.ui bottom-panel-visible false
org.gnome.gedit.preferences.ui side-panel-visible false
org.gnome.gedit.preferences.ui show-tabs-mode 'auto'
org.gnome.gedit.plugins.pythonconsole use-system-font true
org.gnome.gedit.plugins.pythonconsole command-color '#314e6c'
org.gnome.gedit.plugins.pythonconsole error-color '#990000'
org.gnome.gedit.plugins.pythonconsole font 'Monospace 10'
org.gnome.gedit.plugins.externaltools font 'Monospace 10'
org.gnome.gedit.plugins.externaltools use-system-font true
org.gnome.gedit.plugins.filebrowser.nautilus click-policy 'double'
org.gnome.gedit.plugins.filebrowser.nautilus confirm-trash true
org.gnome.gedit.preferences.encodings candidate-encodings ['']
org.gnome.gedit.preferences.print print-header true
org.gnome.gedit.preferences.print print-font-header-pango 'Sans 11'
org.gnome.gedit.preferences.print print-line-numbers uint32 0
org.gnome.gedit.preferences.print print-font-numbers-pango 'Sans 8'
org.gnome.gedit.preferences.print margin-top 15.0
org.gnome.gedit.preferences.print margin-left 25.0
org.gnome.gedit.preferences.print margin-right 25.0
org.gnome.gedit.preferences.print print-font-body-pango 'Monospace 9'
org.gnome.gedit.preferences.print print-syntax-highlighting true
org.gnome.gedit.preferences.print margin-bottom 25.0
org.gnome.gedit.preferences.print print-wrap-mode 'word'
org.gnome.gedit.plugins.filebrowser tree-view true
org.gnome.gedit.plugins.filebrowser filter-mode ['hide-hidden', 'hide-binary']
org.gnome.gedit.plugins.filebrowser filter-pattern ''
org.gnome.gedit.plugins.filebrowser enable-remote false
org.gnome.gedit.plugins.filebrowser root 'file:///'
org.gnome.gedit.plugins.filebrowser virtual-root 'file:///home/a/Dokumenty/mandelbrot_chaotic/period/f-scaling/f2'
org.gnome.gedit.plugins.filebrowser binary-patterns ['*.la', '*.lo']
org.gnome.gedit.plugins.filebrowser open-at-first-doc true
org.gnome.desktop.notifications application-children ['apport-gtk', 'org-gnome-gedit', 'org-gnome-eog', 'geeqie', 'gnome-printers-panel', 'gnome-control-center', 'hplip', 'update-manager', 'org-gnome-nautilus', 'gnome-power-panel', 'krita-krita', 'org-gnome-fileroller', 'org-gnome-software', 'org-gnome-dejadup', 'libreoffice-writer', 'rhythmbox', 'xdg-desktop-portal-gtk', 'zoom-client-zoom-client', 'org-gnome-totem', 'org-gnome-soundjuicer', 'brave-brave', 'libreoffice-calc']
org.gnome.gedit.state.window bottom-panel-size 46
org.gnome.gedit.state.window side-panel-size 200
org.gnome.gedit.state.window side-panel-active-page 'GeditWindowDocumentsPanel'
org.gnome.gedit.state.window bottom-panel-active-page 'GeditPythonConsolePanel'
org.gnome.gedit.state.window size (2560, 1366)
org.gnome.gedit.state.window state 43908
org.gnome.gedit.plugins active-plugins ['pythonconsole', 'spell', 'snippets', 'filebrowser', 'docinfo', 'quickhighlight', 'externaltools', 'sort', 'modelines']
org.gnome.shell favorite-apps ['firefox.desktop', 'thunderbird.desktop', 'org.gnome.Nautilus.desktop', 'rhythmbox.desktop', 'libreoffice-writer.desktop', 'snap-store_ubuntu-software.desktop', 'yelp.desktop', 'org.gnome.Terminal.desktop', 'org.gnome.baobab.desktop', 'org.gnome.gedit.desktop', 'brave_brave.desktop', 'org.gnu.emacs.desktop', 'org.gnome.Calculator.desktop']
org.gnome.shell app-picker-layout [{'org.gnome.Geary.desktop': <{'position': <0>}>, 'org.gnome.Contacts.desktop': <{'position': <1>}>, 'org.gnome.Weather.desktop': <{'position': <2>}>, 'org.gnome.clocks.desktop': <{'position': <3>}>, 'org.gnome.Maps.desktop': <{'position': <4>}>, 'org.gnome.Books.desktop': <{'position': <5>}>, 'org.gnome.Photos.desktop': <{'position': <6>}>, 'org.gnome.Totem.desktop': <{'position': <7>}>, 'org.gnome.Calculator.desktop': <{'position': <8>}>, 'org.gnome.gedit.desktop': <{'position': <9>}>, 'simple-scan.desktop': <{'position': <10>}>, 'gnome-control-center.desktop': <{'position': <11>}>, 'gnome-system-monitor.desktop': <{'position': <12>}>, 'org.gnome.Boxes.desktop': <{'position': <13>}>, 'org.gnome.Terminal.desktop': <{'position': <14>}>, 'Utilities': <{'position': <15>}>, 'org.gnome.Characters.desktop': <{'position': <16>}>, 'yelp.desktop': <{'position': <17>}>, 'org.gnome.Screenshot.desktop': <{'position': <18>}>, 'org.gnome.Cheese.desktop': <{'position': <19>}>, 'org.gnome.font-viewer.desktop': <{'position': <20>}>}]
org.gnome.gedit.preferences.editor wrap-mode 'word'
org.gnome.gedit.preferences.editor auto-save-interval uint32 10
org.gnome.gedit.preferences.editor wrap-last-split-mode 'word'
org.gnome.gedit.preferences.editor use-default-font false
org.gnome.gedit.preferences.editor tabs-size uint32 8
org.gnome.gedit.preferences.editor auto-save true
org.gnome.gedit.preferences.editor background-pattern 'none'
org.gnome.gedit.preferences.editor smart-home-end 'after'
org.gnome.gedit.preferences.editor search-highlighting true
org.gnome.gedit.preferences.editor scheme 'Yaru-dark'
org.gnome.gedit.preferences.editor editor-font 'System-ui 16'
org.gnome.gedit.preferences.editor bracket-matching true
org.gnome.gedit.preferences.editor syntax-highlighting true
org.gnome.gedit.preferences.editor display-right-margin false
org.gnome.gedit.preferences.editor auto-indent true
org.gnome.gedit.preferences.editor max-undo-actions 2000
org.gnome.gedit.preferences.editor restore-cursor-position true
org.gnome.gedit.preferences.editor highlight-current-line true
org.gnome.gedit.preferences.editor display-line-numbers true
org.gnome.gedit.preferences.editor insert-spaces false
org.gnome.gedit.preferences.editor display-overview-map false
org.gnome.gedit.preferences.editor ensure-trailing-newline true
org.gnome.gedit.preferences.editor right-margin-position uint32 80
org.gnome.gedit.preferences.editor create-backup-copy true
org.gnome.gedit.state.file-chooser filter-id 1
org.gnome.gedit.state.file-chooser open-recent false
org.gnome.gedit.plugins.time prompt-type 'prompt-selected-format'
org.gnome.gedit.plugins.time custom-format '%d/%m/%Y %H:%M:%S'
org.gnome.gedit.plugins.time selected-format '%c'
org.gnome.gedit.state.history-entry replace-with-entry ['long double', 'ComputeColorOfDE', '<math>', 'ProjectionType', 'FamilyType', 'ProjectionTypeT', 'lambda_identity', 'c_identity', 'PMAX']
org.gnome.gedit.state.history-entry search-for-entry [' im ', 'double', 'i @', 'i @ ', 'i @ 0', '1.9999999965530804', '-1.9999999965530804', 'ComputeDolorOfDE', 'ParameterType']
org.gnome.gedit.plugins.spell highlight-misspelled false
</pre>
Zapisy w pliku :
/usr/share/applications/org.gnome.gedit.desktop
==Narzędzia==
Możemy je uruchomić za pomocą
* menu : gedit ▸ Preferences ▸ Plugins ▸ External Tools
* skrótów klawiszowych (akceleratorów)
Np skonfigurujemy
* otwieranie konsoli w aktualnym katalogu (pwd)
* otwieranie [[Ubuntu/Pliki|menadżera plików w aktualnym katalogu]]
W ten sposób możemy używać programu jako [[Programowanie_w_systemie_UNIX|lekkiego środowiska programistycznego]]
==wtyczki==
* komentowanie kodu
sudo apt-get update
sudo apt-get install gedit-plugins
Skróty klawiaturowe:
* Ctrl + M Comment Code
* Shift + Ctrl + M Uncomment Code
=Źródła=
<references/>
49b5ybpqr2vrbouzsk3cesw5mce7lrm
Wikibooks:Prośby do administratorów interfejsu/Zgłoszenia
4
33868
437331
437279
2022-08-09T17:44:44Z
Persino
2851
/* 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}}) */
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)
==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ś poprawić stronę: {{LinkKomunikat2|Gadget-delete-local.js}}, a tam linie: linia 27, tzn.:
zamienić:
{{Pre
|reason: "wpis usunięty z powodu {{Nowiki|[[WB:PA|naruszenia praw autorskich]]}}"
}}
na
{{Pre
|reason: "wpis usunięty z powodu {{Nowiki|[[WB:NPA|naruszenia praw autorskich]]}}"
}}
----
i zamienić linię: 91:
{{Pre
|reason: "plik usunięty z powodu {{Nowiki|[[WB:PA|naruszenia praw autorskich]]}}"
}}
na
{{Pre
|reason: "plik usunięty z powodu {{Nowiki|[[WB:NPA|naruszenia praw autorskich]]}}"
}}
----
również zamienić w liniach: 117 - 135
{{Pre
|{{Nowiki|[[$1]]}}
}}
na
{{Pre
|{{Nowiki|[[:$1]]}}
}}
----
i zamienić, tzn. linie 141 - 142:
{{Pre
|caption: "sdu",
reason: "usunięto, {{Nowiki|[[WB:SDU#" + mw.config.get('wgPageName') + "|wynik głosowania na SDU]]}} "
}}
na:
{{Pre
|caption: "dnu",
reason: "usunięto, {{Nowiki|[[Wikibooks:Poczekalnia/Zgłoszenia#" + mw.config.get('wgPageName') + "|wynik głosowania na DNU]]}} "
}}
Z góry dziękuję za spełnienie mojej prośby. [[Wikipedysta:Persino|Persino]] ([[Dyskusja wikipedysty:Persino|dyskusja]]) 07:13, 9 sie 2022 (CEST)
amlpw99r5bl4otc15rrsiax5e5uk5b4
Wikipedysta:Persino/Gadget-StronicowyParser.js/StronaSubst.js
2
58130
437316
437104
2022-08-09T17:00:07Z
Persino
2851
javascript
text/javascript
mw.loader.using('ext.gadget.gConfig', function(){
let globalne_zmienne=this;
StronicowyParser.WyswietlStronyKsiazki=async function(){
await StronicowyParser.muteks.zablokuj();
let stronasubst_latex=undefined;
let stronasubst_mathml=undefined;
let stronasubst_opakuj_kategorie_ze_sortowaniem=undefined;
let stronasubst_ukrywaj_toc=undefined;
let stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=undefined;
let stronasubst_aktualizowanie_nazw_artykulow=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=undefined;
let stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=undefined;
let stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=undefined;
let stronasubst_nie_usuwaj_styli=undefined;
let stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=undefined;
if((globalne_zmienne.gConfig!==undefined)&&(globalne_zmienne.gConfig.register!==undefined)&&(globalne_zmienne.gConfig.get!==undefined)){
mw.messages.set({
'StronaSubst-name': 'Strona zbiorcza',
'StronaSubst-description-page': 'Wikibooks:StronicowyParser/StronaSubst',
'StronaSubst-latex': 'Zamiast wzorów, wstaw tekst latexowy, w przeciwnym przypadku jest w formie LaTeX.',
'StronaSubst-mathml': 'Zamiast wzorów latexowych, wstaw je w formie znaczników MathML.',
'StronaSubst-opakuj_kategorie_ze_sortowaniem' : 'W stronach zbiorczych opakowuje kategorie, w postaci ramki, dla każdego artykułu z osobna.',
'StronaSubst-ukrywaj_toc' : "Ukrywa, począwszy od jakiegoś poziomu wszystkich tam spisów treści, na stronach zbiorczych.",
'StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach' : "Włącza dymki, nad linkami, w ładowanych dynamicznie stronach, tworząc je inteligentnymi.",
'StronaSubst-aktualizowanie_nazw_artykulow' : 'Aktualizuje na podstawie strony głównej nazwy tylko artykułów.',
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami' : "Aktualizuje sekcje poszczegónych rozdziałów artykułów ładowanych rozdziałami, domyślnie według sekcji w tych jednostkach.",
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika' : 'Aktualizuje, sekcje artykułów ładowanych rozdziałami, na podstawie strony głównej książki, a nie jego artykułów.',
'StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej' : 'Aktualizuje nagłówki strony głównej podręcznika na stronie zbiorczej.',
'StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule' : 'Aktualizuje, brakujące sekcje rozdziałów ładowanych rozdziałami artykułów, według wpisów na stronie głównej, na stronie zbiorczej.',
'StronaSubst-nie_usuwaj_styli' : 'Nie usuwa styli z nagłówków ładowanych stron.',
'StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst' : 'Rozwijaj szablony oznaczone szablonem SzablonSubst.',
});
gConfig.register('StronaSubst', {name: mw.msg('StronaSubst-name'), descriptionPage: mw.msg('StronaSubst-description-page')}, [
{
name: 'latex',
desc: mw.msg('StronaSubst-latex'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_latex']
},
{
name: 'mathml',
desc: mw.msg('StronaSubst-mathml'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_mathml']
},
{
name: 'opakuj_kategorie_ze_sortowaniem',
desc: mw.msg('StronaSubst-opakuj_kategorie_ze_sortowaniem'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_opakuj_kategorie_ze_sortowaniem']
},
{
name: 'ukrywaj_toc',
desc: mw.msg('StronaSubst-ukrywaj_toc'),
type: 'integer',
deflt: 0,
validation: function(n){ if((n<0)||(n==1)){ throw 'Wartość dotycząca poziomu ukrywania spisów treści jest nieprawidłowa!' }; return n; },
legacy: [window, 'wb_stronasubst_ukrywaj_toc']
},
{
name: 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach',
desc: mw.msg('StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach']
},
{
name: 'aktualizowanie_nazw_artykulow',
desc: mw.msg('StronaSubst-aktualizowanie_nazw_artykulow'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nazw_artykulow']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika']
},
{
name: 'aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej',
desc: mw.msg('StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej']
},
{
name: 'aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule',
desc: mw.msg('StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule']
},
{
name: 'nie_usuwaj_styli',
desc: mw.msg('StronaSubst-nie_usuwaj_styli'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_nie_usuwaj_styli']
},
{
name: 'rozwijaj_szablony_oznaczone_szablonem_szablonsubst',
desc: mw.msg('StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst']
},
]);
stronasubst_latex = (gConfig.get('StronaSubst', 'latex')==true);
stronasubst_mathml = (((gConfig.get('StronaSubst', 'mathml'))&&(!stronasubst_latex))==true);
stronasubst_opakuj_kategorie_ze_sortowaniem = (gConfig.get('StronaSubst', 'opakuj_kategorie_ze_sortowaniem')==true);
stronasubst_ukrywaj_toc = gConfig.get('StronaSubst', 'ukrywaj_toc');
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach = gConfig.get('StronaSubst', 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach');
stronasubst_aktualizowanie_nazw_artykulow = (gConfig.get('StronaSubst', 'aktualizowanie_nazw_artykulow')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami = (gConfig.get('StronaSubst', 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika = (gConfig.get('StronaSubst','aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika')==true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej = (gConfig.get('StronaSubst','aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej')==true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule = (gConfig.get('StronaSubst','aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule')==true);
stronasubst_nie_usuwaj_styli = (gConfig.get('StronaSubst','nie_usuwaj_styli')==true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst = (gConfig.get('StronaSubst','rozwijaj_szablony_oznaczone_szablonem_szablonsubst')==true);
}
//let podglad=document.querySelector('body:not(.action-view)');
//if(podglad){return;}
let stronasubst_tablica_tych_samych=new Array();
let stronasubst_tablica_rozdzialow=new Array();
let stronasubst_tablica_alternatywnych_nazw=new Array();
stronasubst_latex=((stronasubst_latex!==undefined)?stronasubst_latex:false);
stronasubst_mathml=((stronasubst_mathml!==undefined)?stronasubst_mathml:true);
stronasubst_opakuj_kategorie_ze_sortowaniem=((stronasubst_opakuj_kategorie_ze_sortowaniem!==undefined)?stronasubst_opakuj_kategorie_ze_sortowaniem:false);
stronasubst_ukrywaj_toc=parseInt(((stronasubst_ukrywaj_toc!==undefined)?stronasubst_ukrywaj_toc:0));
stronasubst_ukrywaj_toc=((!isNaN(stronasubst_ukrywaj_toc))?stronasubst_ukrywaj_toc:0);
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=((stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach!==undefined)?stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach:true);
stronasubst_aktualizowanie_nazw_artykulow=((stronasubst_aktualizowanie_nazw_artykulow!==undefined)?stronasubst_aktualizowanie_nazw_artykulow:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika:true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=((stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej!==undefined)?stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej:true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=((stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule!==undefined)?stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule:true);
stronasubst_nie_usuwaj_styli=((stronasubst_nie_usuwaj_styli!==undefined)?stronasubst_nie_usuwaj_styli:true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=((stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst!==undefined)?stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst:true);
async function AnalizujDalejSzablonSubst(element_strony,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let rozdzial_ksiazki="rozdział_książki";
let el=$(element_strony).find('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((el!==null)&&(el.length>0)){
for(let i=0;i<el.length;++i){
let element_el=el[i];
let ksiazka=element_el.querySelector("."+rozdzial_ksiazki);
if(ksiazka){
let nazwa_strony=element_el.getAttribute('nazwa_strony');
if(tab_promise2){tab_promise2.push(true);}
CzyStronaSubst(element_el,nazwa_strony,tab_promise2);
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
async function WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let title=data.parse.title;
let wikikod=data.parse.text['*'];
let strona_hash;
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let t=tab_uzyskane[0];
if(t==undefined){
console.log("Nie wykryto znacznika lsth_\d+.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
strona_hash=titles[t];
let selflink=document.createElement('div');
selflink.innerHTML=wikikod;
let czy_selflink=selflink.getElementsByClassName('selflink');
if((czy_selflink!==null)&&(czy_selflink.length==1)){
let elements=tabstrona[strona_hash];
let a=document.createElement('a');/*Tworzenie linku*/
a.setAttribute('href',StronicowyParser.kodowanie.EncodeHtml(title));
a.innerHTML=strona_hash;
let span=document.createElement('span');
span.appendChild(a);
span.setAttribute("class","niw link");/*Dodawanie klasy, by inny skript JS to przeanalizował jako link*/
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo(span);
}
for(let q in elements){
let element=elements[q];
element.innerHTML="";
element.appendChild(span);
$(element).wrap(function(){return "<strong></strong>";});
let przed=document.createTextNode("{{:");
let po=document.createTextNode("}}");
element.insertBefore(przed,element.firstChild);
element.appendChild(po);
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=tab_uzyskane[1].innerHTML;
let elements=tabstrona[strona_hash];
for(let q in elements){
let element=elements[q];
element.innerHTML=wikikod;
StronicowyParser.ZamienLinkiNaLinkiDoStronyAktualnej(element,title,titles);
}
StronicowyParser.AktualizujSpisTresciModuluStrony(elements,tabs,strona_hash,stronasubst_tablica_alternatywnych_nazw,stronasubst_tablica_tych_samych,stronasubst_tablica_rozdzialow,true,stronasubst_latex,stronasubst_mathml)
let strona_start=$(elements[0]).parents(".strona_start");
let rodzic=undefined;
if((strona_start!==null)&&(strona_start.length>0)){
rodzic=strona_start[0];
}
StronicowyParser.IndeksujHeadLine(rodzic);
StronicowyParser.PrzeIndeksujWszystkieTOC(rodzic,true);
for(let q in elements){
let element=elements[q];
async function ElementDalszychObliczen(element,tab_promise2){
await StronicowyParser.muteks.zablokuj(true);
StronicowyParser.PoprawRozdzialyStron(element);
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu(element,tab_promise2);//Funkcja jako gadżet do numerowania rozdziałów.
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element,tab_promise2);
}
if((StronicowyParser.szablony&&StronicowyParser.szablony.LadujSzablon)&&(stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst)){
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(element,title,titles,undefined,tab_promise).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(()=>{
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika(element);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
ElementDalszychObliczen(element,tab_promise2);
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function ToogleTableOfContainer(panel){
let id=panel.target;
let tagname=id.tagName.toUpperCase();
//console.log(czy_klasa,tagname,"TYTAN)";
if(tagname=="BUTTON"){
let czy_klasa_1=$(id).hasClass('sidebar-toc-toggle');
let czy_klasa_2=$(id).hasClass('vector-toc-collapse-button');
if(czy_klasa_1){
$(id).parent().children().last().each((i,element)=>{
let expanded=$(id).attr('aria-expanded');
if(expanded=="false"){
$(element).css('display',"block");
$(element).closest('li').addClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','true');
}else if(expanded=="true"){
$(element).css('display',"none");
$(element).closest('li').removeClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','false');
}
});
}else if(czy_klasa_2){
$(id).parents('#sidebar-toc-label').siblings('ul').each((i,element)=>{
let ukryj=$(element).css('display');
if(ukryj!="none"){
$(element).css('display',"none");
id.innerHTML=" pokaż ";
}else{
$(element).css('display',"block");
id.innerHTML=" ukryj "
}
});
}
}
}
let mutekstoogle=new StronicowyParser.Muteks();
async function ScrollTableOfContainer(){
await mutekstoogle.zablokuj();
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header').first().each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=rect_sticky.height-15;
});
let parser=document.querySelector('#mw-content-text .mw-parser-output');
if(parser){
let rect=parser.getBoundingClientRect();
if(rect.top>=height_sticky){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item').first().addClass('sidebar-toc-list-item-active');
mutekstoogle.odblokuj();
return;
}
}else{
mutekstoogle.odblokuj();
return;
}
var str=$('#mw-content-text .mw-parser-output').find('h1, h2, h3, h4, h5, h6');
if((str!==null)&&(str.length>0)){
var naglowek;
for(i=0;i<str.length;++i){
let element=str[i];
let rect=element.getBoundingClientRect();
if(rect.top>=height_sticky){
let mw_naglowek=element.querySelector('.mw-headline');
if(mw_naglowek){
let id_naglowek=mw_naglowek.getAttribute('id');
let tak=false;
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+id_naglowek){
let display=window.getComputedStyle(element, null).getPropertyValue('display');
if(display!="none"){
tak=true;
}
}
});
if(tak){
naglowek=id_naglowek;
break;
}
}
}
}
if(naglowek){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+naglowek){
$(element).addClass('sidebar-toc-list-item-active');
}
});
}
}
mutekstoogle.odblokuj();
}
async function StronaSubst(element_strony,wikikod,aktualna_strona,tab_promise2){
await StronicowyParser.muteks.zablokuj();
StronicowyParser.NaprawNaglowkiStrony(element_strony,true);
let czy_wikikod=wikikod.match(/^[_\s]*$/g);
let strona_start=$('#mw-content-text .mw-parser-output .strona_start');
function CzyWszystkieNaglowkiWewnatrzStronaStart(){
let pole=$('#mw-content-text .mw-parser-output').find('h1,h2,h3,h4,h5,h6');
for(let i=0;i<pole.length;++i){
let s=strona_start.find(pole[i]);
if((s===null)||(s.length==0)){
return false;
}
}
return true;
}
if(czy_wikikod){
StronicowyParser.muteks.odblokuj();
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyArtykulu)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyArtykulu(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
let czy_numerowac=StronicowyParser.CzyWlaczycSideBarTOC(undefined,true);
if(czy_numerowac){
czy_numerowac=false;
tab_promise.push(true);
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: StronicowyParser.pageinfo.fullname,
text: '{{#invoke:StronicowyParser|CzyStronęNumerować|'+StronicowyParser.pageinfo.fullname+'}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
let wikikod=data.expandtemplates.wikitext;
let czy_wikikod=/^[_\s]*$/g.test(wikikod);
if(!czy_wikikod){
czy_numerowac=true;
}
tab_promise.pop();
}).catch(()=>{tab_promise.pop();});
}
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
let tab_promise=new Array(true);
StronicowyParser.LimitTOC(czy_numerowac,stronasubst_ukrywaj_toc);
StronicowyParser.szablony.LadujSzablon(null,null,null,czy_numerowac,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true)
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],czy_numerowac,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(czy_numerowac)){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
return;
}
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(null,null,null,undefined,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async (result) => {
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
await StronicowyParser.CzekajNaZakaczenie(tab_promise).then(async (result) => {}).catch(()=>{});
await StronicowyParser.muteks.zablokuj();
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
let rozdzial_ksiazki="rozdział_książki";
let tagclass=element_strony.getElementsByClassName(rozdzial_ksiazki);
if(tagclass===null){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return null;
}
let liczba_elementow=tagclass.length;
if(liczba_elementow==0){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return null;
}
let titles=new Array();
let tabstrona=new Array();
let tabs=new Array();
let tab_section=new Array();
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element_strony,tab_promise2);
}
let tab_hn=new Array();
async function edit_action(numer,strona,hn,link_strona,czy_link_nie_w_naglowku){
await StronicowyParser.muteks.zablokuj();
let linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection===null){
let editsection=document.createElement('span');
editsection.classList.add('mw-editsection');
let bracket_poczatek=document.createElement('span');
bracket_poczatek.classList.add('mw-editsection-bracket')
bracket_poczatek.innerHTML="[";
let a=document.createElement('a');
a.setAttribute('href',"/w/index.php?title="+StronicowyParser.kodowanie.EncodeHtml(strona,false,true)+"&action=edit"+((numer>0)?("§ion="+numer):""));
a.setAttribute('title',"Edytuj artykuł: "+link_strona);
a.innerHTML="edytuj";
let bracket_koniec=document.createElement('span');
bracket_koniec.classList.add('mw-editsection-bracket')
bracket_koniec.innerHTML="]";
editsection.appendChild(bracket_poczatek);
editsection.appendChild(a)
editsection.appendChild(bracket_koniec);
hn.appendChild(editsection);
}
linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection!==null){
let mw_editsection_bracket=linkstrony_editsection.querySelector('a');
if(mw_editsection_bracket!==null){
if(czy_link_nie_w_naglowku){
let a=document.createElement('a');
a.innerHTML="artykuł";
a.setAttribute("href",StronicowyParser.kodowanie.EncodeHtml("/wiki/"+StronicowyParser.kodowanie.EncodeHtml(link_strona,false,true)));
a.setAttribute("title","Zobacz artykuł: "+link_strona);
let span=document.createElement('span');
span.innerHTML="| ";
span.setAttribute('class',"mw-editsection-bracket")
let czy_ma=$(mw_editsection_bracket).parent().hasClass('link');
if(czy_ma){
let rodzic_mw_editsection_bracket=mw_editsection_bracket.parentNode;
let span2=linkstrony_editsection.insertBefore(span, rodzic_mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}else{
let span2=linkstrony_editsection.insertBefore(span, mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}
}
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(linkstrony_editsection).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
}
for (let i=0;i<liczba_elementow;++i){
let tagclassname=tagclass[i];
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find("."+rozdzial_ksiazki);
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==tagclassname){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
if(tagclassname.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let class_element=tagclassname.getElementsByClassName('strona_subst');
let element;
if((class_element!==null)&&(class_element.length==1)){
element=class_element[0];
if(element.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let czy_link_nie_w_naglowku;
let strona_headline=tagclassname.getElementsByClassName('mw-headline');
let link_strona;
if((strona_headline!==null)&&(strona_headline.length==1)){
strona_a=strona_headline[0].getElementsByTagName('a');
if((strona_a!==null)&&(strona_a.length==1)){
link_strona=StronicowyParser.kodowanie.DecodeHtml(strona_a[0].getAttribute('href'));
if(link_strona!==null){
let re=/\/wiki\//g;
if(re.test(link_strona)){
link_strona=link_strona.substring(6,link_strona.length);
czy_link_nie_w_naglowku=false;
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}
}else{
link_strona=StronicowyParser.style.UsunStyle(element.innerHTML);
czy_link_nie_w_naglowku=true;
}
}
let re = /^[_\s]*$/g;
let dopasowanie = re.test(link_strona);
if(dopasowanie){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return;
};
link_strona=link_strona.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ").replace(/&/g,"&").replace(/ /g," ");
let hash=link_strona.replace(/^([^#]*)#(.*)$/,"$2").replace(/&/g,"&").replace(/ /g,"_");
/**/
let hn=strona_headline[0].parentNode;
if((hn===null)||(!hn.tagName.toUpperCase().match(/^H\d+$/g))){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
tab_section[i]=new Array(hn,link_strona,czy_link_nie_w_naglowku);
let strona=link_strona.match(/^[^#]*/g).toString();
async function PraceIteracyjne(tab_promise2){
await StronicowyParser.muteks.zablokuj();
if(/#/g.test(link_strona)){
let hash=link_strona.replace(/^([^#]*)#(.*)$/g,"$2");
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let numer=hn.innerHTML;
numer=parseInt(numer);
if(isNaN(numer)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return ;}
let tab_c=tab_section[c];
edit_action(numer,tab_c[1].match(/^[^#]*/g).toString(),tab_c[0],tab_c[1],tab_c[2]);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami){
if(!stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}else{
let uzupelniaj_sekcje_artykulow;
if(stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule){
uzupelniaj_sekcje_artykulow="tak";
}else{
uzupelniaj_sekcje_artykulow="";
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+link_strona+"|analiza=tak|uzupełniaj sekcje artykułów="+uzupelniaj_sekcje_artykulow+"|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
let a=headline.getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
a[0].setAttribute('title',stare);
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
}else{
edit_action(0,strona,hn,link_strona,czy_link_nie_w_naglowku);
if(stronasubst_aktualizowanie_nazw_artykulow){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+strona+"|analiza=tak|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceIteracyjne(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
/**/
tabs[i]=link_strona;
let czy=false;
for(let d in titles){
if(titles[d]==link_strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=link_strona;
}
if(tabstrona[link_strona]==null){
tabstrona[link_strona]=new Array();
}
let tab=tabstrona[link_strona];
let tablen=tab.length;
tabstrona[link_strona][tablen]=element;
}
async function PraceNaglowki(tab_promise2){
await StronicowyParser.muteks.zablokuj();
let promise;
if(element_strony==document){
let namespace=StronicowyParser.pageinfo.namespace;
let strona_podrecznika=((namespace!="")?(namespace+":"):"")+StronicowyParser.pageinfo.bookname;
promise=Promise.resolve(strona_podrecznika);
}else{
let zaan=$(element_strony).parents('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((zaan!==null)&&(zaan.length>0)){
let strona=zaan[0].getAttribute('nazwa_strony');
if(strona){
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](strona);
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}
if(tab_promise2){tab_promise2.push(true);}
promise.then(async (strona_podrecznika)=>{
await StronicowyParser.muteks.zablokuj();
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find(".klasa_nagłówka");
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)){
let g=0;
let tab_naglowka=new Array();
let tab_hn=new Array();
for(let z=0;z<klasa_naglowka.length;++z){
let pojedyncza_klasa_naglowka=klasa_naglowka[z];
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==pojedyncza_klasa_naglowka){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
let dana_klasa_naglowka=pojedyncza_klasa_naglowka.querySelector('.mw-headline');
if(dana_klasa_naglowka!==null){
if((dana_klasa_naglowka.parentNode!==null)&&(dana_klasa_naglowka.parentNode.tagName.toUpperCase().match(/^[Hh]\d+$/g))
&&(dana_klasa_naglowka.parentNode.parentNode!=null)&&(dana_klasa_naglowka.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&($(dana_klasa_naglowka.parentNode.parentNode).hasClass('klasa_nagłówka'))){
let naglowek=StronicowyParser.style.UsunStyle(dana_klasa_naglowka.innerHTML).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_").replace(/&/g,"&").replace(/ /g,"_");
let ww=1;
for(let x=0;x<tab_naglowka.length;++x){
if(tab_naglowka[x]==naglowek){
++ww;
}
}
naglowek=naglowek+((ww>1)?ww:"");
tab_naglowka[g]=naglowek;
tab_hn[g]=dana_klasa_naglowka.parentNode;
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, na stronie głównej podręcznika, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let nazwa_podrecznika=strona_podrecznika.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
let naglowek_sekcji_podrecznika=tab_naglowka[c].replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
edit_action(c+1,nazwa_podrecznika,tab_hn[c],nazwa_podrecznika+"#"+naglowek_sekcji_podrecznika,true);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();return;}
let headline=tab_hn[c].querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
++g;
}
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceNaglowki(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
function RozwazajNaglowki(){
let toc_fun=new StronicowyParser.ListaNodeTOC();
if((toc_fun.toc!==null)&&(toc_fun.toc.length>0)){
for(let w=0;w<toc_fun.toc.length;++w){
let czy_side_bar_toc=toc_fun.CzySideBarToc(toc_fun.toc[w]);
let ile_jest=0;
let li=toc_fun.toc[w].getElementsByTagName('li');
if((li!==null)&&(li.length>0)){
for(let dd=0;dd<li.length;++dd){
let element_li=li[dd];
let tocnumber;let toctext_wartosc;
if(czy_side_bar_toc){
tocnumber=element_li.querySelector('.sidebar-toc-numb');
if(!tocnumber){continue;}
toctext_wartosc=element_li.querySelector('.sidebar-toc-text').innerHTML.replace(new RegExp(StronicowyParser.wzor.BezZnakowSpecjalnych(tocnumber.outerHTML),"g"),"");
}else{
tocnumber=element_li.querySelector('.tocnumber');
toctext_wartosc=element_li.querySelector('.toctext').innerHTML;
}
if((tocnumber!==null)&&(toctext_wartosc!==null)){
let czy_jest=undefined;
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)&&(klasa_naglowka[ile_jest]!=null)){
let element_klasa_naglowka=klasa_naglowka[ile_jest];
let headline=element_klasa_naglowka.querySelector('.mw-headline');
if((headline!==null)
&&(headline.parentNode!==null)
&&(headline.parentNode.tagName.toUpperCase().match(/^H\d+$/))
&&(headline.parentNode.parentNode!==null)
&&(headline.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&(headline.parentNode.parentNode===element_klasa_naglowka)
){
let element_a;
if(czy_side_bar_toc){
element_a=tocnumber.parentNode.parentNode;
}else{
element_a=tocnumber.parentNode;
}
if(element_a.tagName.toUpperCase()=="A"){
let href=StronicowyParser.kodowanie.DecodeHtml(element_a.getAttribute('href'));
if(href!==null){
href=href.replace(/^#/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
let id_headline=headline.getAttribute('id');
if(id_headline!==null){
id_headline=id_headline.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
if(href!=id_headline){czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
if(czy_jest===undefined){ile_jest+=1;}
if((czy_jest===undefined)||(!czy_jest)){
let element_toctext=StronicowyParser.style.UsunStyle(toctext_wartosc).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ");
if(stronasubst_tablica_rozdzialow[element_toctext]==null){
stronasubst_tablica_rozdzialow[element_toctext]=new Array(tocnumber);
}else{
stronasubst_tablica_rozdzialow[element_toctext].push(tocnumber);
}
}
}
}
}
}
}
}
StronicowyParser.LimitTOC(true,stronasubst_ukrywaj_toc);
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],true,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(StronicowyParser.CzyWlaczycSideBarTOC(undefined,true))){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
RozwazajNaglowki();
if(stronasubst_mathml){
$("div.toc ul > li > a > span.toctext").toggleClass("mathml");
$("div.toc_spis ul > li > a > span.toctext").toggleClass("mathml");
$("div.mw-table-of-contents-container > nav.sidebar-toc ul > li > a > div.sidebar-toc-text").toggleClass("mathml");
}
function Strona(strona){
let strona_re=StronicowyParser.wzor.BezZnakowSpecjalnych(strona);
let re=new RegExp("^\\s*"+strona_re+"\\s*#","g");
return re;
}
function CzyArtykulyZNaglowkamiDlaStrony(re){
for(let s in titles){
let czy_hash=titles[s].match(re);
if(czy_hash){
return true;
}
}
return false;
}
let catlinks_fun=new StronicowyParser.LinkiKategorii();
await catlinks_fun.PobierzKategorieStrony();
for ( let t in titles ) {
let strona=titles[t].match(/^[^#]*/g).toString();
let szablon_artykulu;
let re_strona=Strona(strona);
let czy_naglowki=CzyArtykulyZNaglowkamiDlaStrony(re_strona);
if(!czy_naglowki){
szablon_artykulu="{{:"+strona+"}}";
}else{
/*---------------------------------*/
let rozdzial1=null;
let re=/^([^#]*)#(.*)$/g;
if(re.test(titles[t])){
rozdzial1=titles[t].replace(re,"$2");
rozdzial1=rozdzial1.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial1="";}
let rozdzial2=null;
let tit=titles[parseInt(t)+1];
if( tit && re.test(tit) && re_strona.test(tit)){
rozdzial2=tit.replace(re,"$2");
rozdzial2=rozdzial2.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial2="";}
/*---------------------------*/
szablon_artykulu="{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|TekstRozdziałuStrony|"+strona+"|"+rozdzial1+"|"+rozdzial2+"}}}}";
}
szablon_artykulu="{{PrzytnijTekst|"+szablon_artykulu+"}}";
if(stronasubst_opakuj_kategorie_ze_sortowaniem){
szablon_artykulu="{{OpakujKategorieZeSortowaniem|"+szablon_artykulu+"}}"
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text|categories',
title: strona,
text: "<div class=\"hn hn_"+t+"\">\n"+szablon_artykulu+"\n</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
catlinks_fun.AnalizaKategorii(data).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);}
WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2).then((result) => {}).catch((error) => {});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function CzyszczenieZZdarzeńTableOfContent(){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
}
}
CzyszczenieZZdarzeńTableOfContent();
let tab_promise2=new StronicowyParser.SugerowaneObiekty();
async function CzyStronaSubst(element,aktualna_strona,tab_promise2){
if(tab_promise2){tab_promise2.push(true);}
await StronicowyParser.muteks.zablokuj();
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: aktualna_strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.expandtemplates.wikitext;
if((wikikod!==null)&&(aktualna_strona!==null)){
if(tab_promise2){tab_promise2.push(true);}
StronaSubst(element,wikikod,aktualna_strona,tab_promise2).then((result) => {}).catch((error) => {});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
let aktualna_strona=StronicowyParser.pageinfo.fullname;
if(tab_promise2){tab_promise2.push(true,true);}
CzyStronaSubst(document,aktualna_strona,tab_promise2);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
function Progress(){
var c=document.createElement('div');
c.setAttribute("id","pasek_postępu")
c.setAttribute('style','margin-top:-2px;margin-left:-2px;position:absolute;width:250px;height:80px;border:1px solid black;box-sizing:border-box;padding:5px;background-color:white;');
c.css({'display:':'flex','flex-direction':'column'});
var label=document.createElement('label');
label.setAttribute('for','file1');
label.innerHTML="<span style=\"color:blue;\">Ukończone wątki: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%');
var span=document.createElement('span');
span.innerHTML="0%";
var span_0=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file1')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;');
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_1=c.appendChild(progress);
var label=document.createElement('label');
label.setAttribute('for','file2');
label.innerHTML="<span style=\"color:blue;\">Zwolnione blokaty: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_1=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file2')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%')
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_2=c.appendChild(progress);
function PozycjaXY(){
c.style.top=(window.scrollY+document.documentElement.clientHeight-parseFloat(c.style.height))+"px";
c.style.left=(window.scrollX+document.documentElement.clientWidth-parseFloat(c.style.width))+"px";
}
document.querySelector('body').appendChild(c);
PozycjaXY();
$(window).on('scroll',PozycjaXY);
$(window).on('resize',PozycjaXY);
return new Array(element_body_progress_1,element_body_progress_2,span_0,span_1);
}
var arr;
function __FUNKCJA(arr){
arr[0].setAttribute("value","0");
arr[1].setAttribute("value","0");
let dodatnie_0=tab_promise2.lengthPlus;
let ujemne_0=tab_promise2.lengthMinus;
let dodatnie_1=StronicowyParser.muteks.LiczbaBlokatPlus;
let ujemne_1=StronicowyParser.muteks.LiczbaBlokatMinus;
let postep_0=((dodatnie_0>0)?((ujemne_0/dodatnie_0)*100):0);
let postep_1=((dodatnie_1>0)?((ujemne_1/dodatnie_1)*100):0);
arr[0].setAttribute("value",postep_0);
arr[1].setAttribute("value",postep_1);
arr[2].innerHTML=(parseInt(postep_0*1000)/1000)+"%";
arr[3].innerHTML=(parseInt(postep_1*1000)/1000)+"%";
}
StronicowyParser.CzekajNaZakaczenie(tab_promise2,null,StronicowyParser.muteks,(tab_promise)=>{arr=Progress();__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);setTimeout(function(){let node_postep=document.getElementById('pasek_postępu');$(node_postep).remove();},2000);}).then(async (result) => {}).catch(()=>{});
};
StronicowyParser.WyswietlStronyKsiazki().then((result) => {}).catch((error) => {});
});
nbxawy1ngzwlahh5vu5essuu8dymki1
437317
437316
2022-08-09T17:03:10Z
Persino
2851
javascript
text/javascript
mw.loader.using('ext.gadget.gConfig', function(){
let globalne_zmienne=this;
StronicowyParser.WyswietlStronyKsiazki=async function(){
await StronicowyParser.muteks.zablokuj();
let stronasubst_latex=undefined;
let stronasubst_mathml=undefined;
let stronasubst_opakuj_kategorie_ze_sortowaniem=undefined;
let stronasubst_ukrywaj_toc=undefined;
let stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=undefined;
let stronasubst_aktualizowanie_nazw_artykulow=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=undefined;
let stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=undefined;
let stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=undefined;
let stronasubst_nie_usuwaj_styli=undefined;
let stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=undefined;
if((globalne_zmienne.gConfig!==undefined)&&(globalne_zmienne.gConfig.register!==undefined)&&(globalne_zmienne.gConfig.get!==undefined)){
mw.messages.set({
'StronaSubst-name': 'Strona zbiorcza',
'StronaSubst-description-page': 'Wikibooks:StronicowyParser/StronaSubst',
'StronaSubst-latex': 'Zamiast wzorów, wstaw tekst latexowy, w przeciwnym przypadku jest w formie LaTeX.',
'StronaSubst-mathml': 'Zamiast wzorów latexowych, wstaw je w formie znaczników MathML.',
'StronaSubst-opakuj_kategorie_ze_sortowaniem' : 'W stronach zbiorczych opakowuje kategorie, w postaci ramki, dla każdego artykułu z osobna.',
'StronaSubst-ukrywaj_toc' : "Ukrywa, począwszy od jakiegoś poziomu wszystkich tam spisów treści, na stronach zbiorczych.",
'StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach' : "Włącza dymki, nad linkami, w ładowanych dynamicznie stronach, tworząc je inteligentnymi.",
'StronaSubst-aktualizowanie_nazw_artykulow' : 'Aktualizuje na podstawie strony głównej nazwy tylko artykułów.',
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami' : "Aktualizuje sekcje poszczegónych rozdziałów artykułów ładowanych rozdziałami, domyślnie według sekcji w tych jednostkach.",
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika' : 'Aktualizuje, sekcje artykułów ładowanych rozdziałami, na podstawie strony głównej książki, a nie jego artykułów.',
'StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej' : 'Aktualizuje nagłówki strony głównej podręcznika na stronie zbiorczej.',
'StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule' : 'Aktualizuje, brakujące sekcje rozdziałów ładowanych rozdziałami artykułów, według wpisów na stronie głównej, na stronie zbiorczej.',
'StronaSubst-nie_usuwaj_styli' : 'Nie usuwa styli z nagłówków ładowanych stron.',
'StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst' : 'Rozwijaj szablony oznaczone szablonem SzablonSubst.',
});
gConfig.register('StronaSubst', {name: mw.msg('StronaSubst-name'), descriptionPage: mw.msg('StronaSubst-description-page')}, [
{
name: 'latex',
desc: mw.msg('StronaSubst-latex'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_latex']
},
{
name: 'mathml',
desc: mw.msg('StronaSubst-mathml'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_mathml']
},
{
name: 'opakuj_kategorie_ze_sortowaniem',
desc: mw.msg('StronaSubst-opakuj_kategorie_ze_sortowaniem'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_opakuj_kategorie_ze_sortowaniem']
},
{
name: 'ukrywaj_toc',
desc: mw.msg('StronaSubst-ukrywaj_toc'),
type: 'integer',
deflt: 0,
validation: function(n){ if((n<0)||(n==1)){ throw 'Wartość dotycząca poziomu ukrywania spisów treści jest nieprawidłowa!' }; return n; },
legacy: [window, 'wb_stronasubst_ukrywaj_toc']
},
{
name: 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach',
desc: mw.msg('StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach']
},
{
name: 'aktualizowanie_nazw_artykulow',
desc: mw.msg('StronaSubst-aktualizowanie_nazw_artykulow'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nazw_artykulow']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika']
},
{
name: 'aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej',
desc: mw.msg('StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej']
},
{
name: 'aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule',
desc: mw.msg('StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule']
},
{
name: 'nie_usuwaj_styli',
desc: mw.msg('StronaSubst-nie_usuwaj_styli'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_nie_usuwaj_styli']
},
{
name: 'rozwijaj_szablony_oznaczone_szablonem_szablonsubst',
desc: mw.msg('StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst']
},
]);
stronasubst_latex = (gConfig.get('StronaSubst', 'latex')==true);
stronasubst_mathml = (((gConfig.get('StronaSubst', 'mathml'))&&(!stronasubst_latex))==true);
stronasubst_opakuj_kategorie_ze_sortowaniem = (gConfig.get('StronaSubst', 'opakuj_kategorie_ze_sortowaniem')==true);
stronasubst_ukrywaj_toc = gConfig.get('StronaSubst', 'ukrywaj_toc');
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach = gConfig.get('StronaSubst', 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach');
stronasubst_aktualizowanie_nazw_artykulow = (gConfig.get('StronaSubst', 'aktualizowanie_nazw_artykulow')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami = (gConfig.get('StronaSubst', 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika = (gConfig.get('StronaSubst','aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika')==true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej = (gConfig.get('StronaSubst','aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej')==true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule = (gConfig.get('StronaSubst','aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule')==true);
stronasubst_nie_usuwaj_styli = (gConfig.get('StronaSubst','nie_usuwaj_styli')==true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst = (gConfig.get('StronaSubst','rozwijaj_szablony_oznaczone_szablonem_szablonsubst')==true);
}
//let podglad=document.querySelector('body:not(.action-view)');
//if(podglad){return;}
let stronasubst_tablica_tych_samych=new Array();
let stronasubst_tablica_rozdzialow=new Array();
let stronasubst_tablica_alternatywnych_nazw=new Array();
stronasubst_latex=((stronasubst_latex!==undefined)?stronasubst_latex:false);
stronasubst_mathml=((stronasubst_mathml!==undefined)?stronasubst_mathml:true);
stronasubst_opakuj_kategorie_ze_sortowaniem=((stronasubst_opakuj_kategorie_ze_sortowaniem!==undefined)?stronasubst_opakuj_kategorie_ze_sortowaniem:false);
stronasubst_ukrywaj_toc=parseInt(((stronasubst_ukrywaj_toc!==undefined)?stronasubst_ukrywaj_toc:0));
stronasubst_ukrywaj_toc=((!isNaN(stronasubst_ukrywaj_toc))?stronasubst_ukrywaj_toc:0);
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=((stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach!==undefined)?stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach:true);
stronasubst_aktualizowanie_nazw_artykulow=((stronasubst_aktualizowanie_nazw_artykulow!==undefined)?stronasubst_aktualizowanie_nazw_artykulow:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika:true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=((stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej!==undefined)?stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej:true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=((stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule!==undefined)?stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule:true);
stronasubst_nie_usuwaj_styli=((stronasubst_nie_usuwaj_styli!==undefined)?stronasubst_nie_usuwaj_styli:true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=((stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst!==undefined)?stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst:true);
async function AnalizujDalejSzablonSubst(element_strony,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let rozdzial_ksiazki="rozdział_książki";
let el=$(element_strony).find('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((el!==null)&&(el.length>0)){
for(let i=0;i<el.length;++i){
let element_el=el[i];
let ksiazka=element_el.querySelector("."+rozdzial_ksiazki);
if(ksiazka){
let nazwa_strony=element_el.getAttribute('nazwa_strony');
if(tab_promise2){tab_promise2.push(true);}
CzyStronaSubst(element_el,nazwa_strony,tab_promise2);
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
async function WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let title=data.parse.title;
let wikikod=data.parse.text['*'];
let strona_hash;
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let t=tab_uzyskane[0];
if(t==undefined){
console.log("Nie wykryto znacznika lsth_\d+.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
strona_hash=titles[t];
let selflink=document.createElement('div');
selflink.innerHTML=wikikod;
let czy_selflink=selflink.getElementsByClassName('selflink');
if((czy_selflink!==null)&&(czy_selflink.length==1)){
let elements=tabstrona[strona_hash];
let a=document.createElement('a');/*Tworzenie linku*/
a.setAttribute('href',StronicowyParser.kodowanie.EncodeHtml(title));
a.innerHTML=strona_hash;
let span=document.createElement('span');
span.appendChild(a);
span.setAttribute("class","niw link");/*Dodawanie klasy, by inny skript JS to przeanalizował jako link*/
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo(span);
}
for(let q in elements){
let element=elements[q];
element.innerHTML="";
element.appendChild(span);
$(element).wrap(function(){return "<strong></strong>";});
let przed=document.createTextNode("{{:");
let po=document.createTextNode("}}");
element.insertBefore(przed,element.firstChild);
element.appendChild(po);
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=tab_uzyskane[1].innerHTML;
let elements=tabstrona[strona_hash];
for(let q in elements){
let element=elements[q];
element.innerHTML=wikikod;
StronicowyParser.ZamienLinkiNaLinkiDoStronyAktualnej(element,title,titles);
}
StronicowyParser.AktualizujSpisTresciModuluStrony(elements,tabs,strona_hash,stronasubst_tablica_alternatywnych_nazw,stronasubst_tablica_tych_samych,stronasubst_tablica_rozdzialow,true,stronasubst_latex,stronasubst_mathml)
let strona_start=$(elements[0]).parents(".strona_start");
let rodzic=undefined;
if((strona_start!==null)&&(strona_start.length>0)){
rodzic=strona_start[0];
}
StronicowyParser.IndeksujHeadLine(rodzic);
StronicowyParser.PrzeIndeksujWszystkieTOC(rodzic,true);
for(let q in elements){
let element=elements[q];
async function ElementDalszychObliczen(element,tab_promise2){
await StronicowyParser.muteks.zablokuj(true);
StronicowyParser.PoprawRozdzialyStron(element);
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu(element,tab_promise2);//Funkcja jako gadżet do numerowania rozdziałów.
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element,tab_promise2);
}
if((StronicowyParser.szablony&&StronicowyParser.szablony.LadujSzablon)&&(stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst)){
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(element,title,titles,undefined,tab_promise).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(()=>{
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika(element);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
ElementDalszychObliczen(element,tab_promise2);
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function ToogleTableOfContainer(panel){
let id=panel.target;
let tagname=id.tagName.toUpperCase();
//console.log(czy_klasa,tagname,"TYTAN)";
if(tagname=="BUTTON"){
let czy_klasa_1=$(id).hasClass('sidebar-toc-toggle');
let czy_klasa_2=$(id).hasClass('vector-toc-collapse-button');
if(czy_klasa_1){
$(id).parent().children().last().each((i,element)=>{
let expanded=$(id).attr('aria-expanded');
if(expanded=="false"){
$(element).css('display',"block");
$(element).closest('li').addClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','true');
}else if(expanded=="true"){
$(element).css('display',"none");
$(element).closest('li').removeClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','false');
}
});
}else if(czy_klasa_2){
$(id).parents('#sidebar-toc-label').siblings('ul').each((i,element)=>{
let ukryj=$(element).css('display');
if(ukryj!="none"){
$(element).css('display',"none");
id.innerHTML=" pokaż ";
}else{
$(element).css('display',"block");
id.innerHTML=" ukryj "
}
});
}
}
}
let mutekstoogle=new StronicowyParser.Muteks();
async function ScrollTableOfContainer(){
await mutekstoogle.zablokuj();
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header').first().each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=rect_sticky.height-15;
});
let parser=document.querySelector('#mw-content-text .mw-parser-output');
if(parser){
let rect=parser.getBoundingClientRect();
if(rect.top>=height_sticky){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item').first().addClass('sidebar-toc-list-item-active');
mutekstoogle.odblokuj();
return;
}
}else{
mutekstoogle.odblokuj();
return;
}
var str=$('#mw-content-text .mw-parser-output').find('h1, h2, h3, h4, h5, h6');
if((str!==null)&&(str.length>0)){
var naglowek;
for(i=0;i<str.length;++i){
let element=str[i];
let rect=element.getBoundingClientRect();
if(rect.top>=height_sticky){
let mw_naglowek=element.querySelector('.mw-headline');
if(mw_naglowek){
let id_naglowek=mw_naglowek.getAttribute('id');
let tak=false;
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+id_naglowek){
let display=window.getComputedStyle(element, null).getPropertyValue('display');
if(display!="none"){
tak=true;
}
}
});
if(tak){
naglowek=id_naglowek;
break;
}
}
}
}
if(naglowek){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+naglowek){
$(element).addClass('sidebar-toc-list-item-active');
}
});
}
}
mutekstoogle.odblokuj();
}
async function StronaSubst(element_strony,wikikod,aktualna_strona,tab_promise2){
await StronicowyParser.muteks.zablokuj();
StronicowyParser.NaprawNaglowkiStrony(element_strony,true);
let czy_wikikod=wikikod.match(/^[_\s]*$/g);
let strona_start=$('#mw-content-text .mw-parser-output .strona_start');
function CzyWszystkieNaglowkiWewnatrzStronaStart(){
let pole=$('#mw-content-text .mw-parser-output').find('h1,h2,h3,h4,h5,h6');
for(let i=0;i<pole.length;++i){
let s=strona_start.find(pole[i]);
if((s===null)||(s.length==0)){
return false;
}
}
return true;
}
if(czy_wikikod){
StronicowyParser.muteks.odblokuj();
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyArtykulu)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyArtykulu(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
let czy_numerowac=StronicowyParser.CzyWlaczycSideBarTOC(undefined,true);
if(czy_numerowac){
czy_numerowac=false;
tab_promise.push(true);
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: StronicowyParser.pageinfo.fullname,
text: '{{#invoke:StronicowyParser|CzyStronęNumerować|'+StronicowyParser.pageinfo.fullname+'}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
let wikikod=data.expandtemplates.wikitext;
let czy_wikikod=/^[_\s]*$/g.test(wikikod);
if(!czy_wikikod){
czy_numerowac=true;
}
tab_promise.pop();
}).catch(()=>{tab_promise.pop();});
}
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
let tab_promise=new Array(true);
StronicowyParser.LimitTOC(czy_numerowac,stronasubst_ukrywaj_toc);
StronicowyParser.szablony.LadujSzablon(null,null,null,czy_numerowac,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true)
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],czy_numerowac,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(czy_numerowac)){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
return;
}
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(null,null,null,undefined,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async (result) => {
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
await StronicowyParser.CzekajNaZakaczenie(tab_promise).then(async (result) => {}).catch(()=>{});
await StronicowyParser.muteks.zablokuj();
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
let rozdzial_ksiazki="rozdział_książki";
let tagclass=element_strony.getElementsByClassName(rozdzial_ksiazki);
if(tagclass===null){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return null;
}
let liczba_elementow=tagclass.length;
if(liczba_elementow==0){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return null;
}
let titles=new Array();
let tabstrona=new Array();
let tabs=new Array();
let tab_section=new Array();
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element_strony,tab_promise2);
}
let tab_hn=new Array();
async function edit_action(numer,strona,hn,link_strona,czy_link_nie_w_naglowku){
await StronicowyParser.muteks.zablokuj();
let linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection===null){
let editsection=document.createElement('span');
editsection.classList.add('mw-editsection');
let bracket_poczatek=document.createElement('span');
bracket_poczatek.classList.add('mw-editsection-bracket')
bracket_poczatek.innerHTML="[";
let a=document.createElement('a');
a.setAttribute('href',"/w/index.php?title="+StronicowyParser.kodowanie.EncodeHtml(strona,false,true)+"&action=edit"+((numer>0)?("§ion="+numer):""));
a.setAttribute('title',"Edytuj artykuł: "+link_strona);
a.innerHTML="edytuj";
let bracket_koniec=document.createElement('span');
bracket_koniec.classList.add('mw-editsection-bracket')
bracket_koniec.innerHTML="]";
editsection.appendChild(bracket_poczatek);
editsection.appendChild(a)
editsection.appendChild(bracket_koniec);
hn.appendChild(editsection);
}
linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection!==null){
let mw_editsection_bracket=linkstrony_editsection.querySelector('a');
if(mw_editsection_bracket!==null){
if(czy_link_nie_w_naglowku){
let a=document.createElement('a');
a.innerHTML="artykuł";
a.setAttribute("href",StronicowyParser.kodowanie.EncodeHtml("/wiki/"+StronicowyParser.kodowanie.EncodeHtml(link_strona,false,true)));
a.setAttribute("title","Zobacz artykuł: "+link_strona);
let span=document.createElement('span');
span.innerHTML="| ";
span.setAttribute('class',"mw-editsection-bracket")
let czy_ma=$(mw_editsection_bracket).parent().hasClass('link');
if(czy_ma){
let rodzic_mw_editsection_bracket=mw_editsection_bracket.parentNode;
let span2=linkstrony_editsection.insertBefore(span, rodzic_mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}else{
let span2=linkstrony_editsection.insertBefore(span, mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}
}
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(linkstrony_editsection).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
}
for (let i=0;i<liczba_elementow;++i){
let tagclassname=tagclass[i];
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find("."+rozdzial_ksiazki);
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==tagclassname){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
if(tagclassname.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let class_element=tagclassname.getElementsByClassName('strona_subst');
let element;
if((class_element!==null)&&(class_element.length==1)){
element=class_element[0];
if(element.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let czy_link_nie_w_naglowku;
let strona_headline=tagclassname.getElementsByClassName('mw-headline');
let link_strona;
if((strona_headline!==null)&&(strona_headline.length==1)){
strona_a=strona_headline[0].getElementsByTagName('a');
if((strona_a!==null)&&(strona_a.length==1)){
link_strona=StronicowyParser.kodowanie.DecodeHtml(strona_a[0].getAttribute('href'));
if(link_strona!==null){
let re=/\/wiki\//g;
if(re.test(link_strona)){
link_strona=link_strona.substring(6,link_strona.length);
czy_link_nie_w_naglowku=false;
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}
}else{
link_strona=StronicowyParser.style.UsunStyle(element.innerHTML);
czy_link_nie_w_naglowku=true;
}
}
let re = /^[_\s]*$/g;
let dopasowanie = re.test(link_strona);
if(dopasowanie){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return;
};
link_strona=link_strona.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ").replace(/&/g,"&").replace(/ /g," ");
let hash=link_strona.replace(/^([^#]*)#(.*)$/,"$2").replace(/&/g,"&").replace(/ /g,"_");
/**/
let hn=strona_headline[0].parentNode;
if((hn===null)||(!hn.tagName.toUpperCase().match(/^H\d+$/g))){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
tab_section[i]=new Array(hn,link_strona,czy_link_nie_w_naglowku);
let strona=link_strona.match(/^[^#]*/g).toString();
async function PraceIteracyjne(tab_promise2){
await StronicowyParser.muteks.zablokuj();
if(/#/g.test(link_strona)){
let hash=link_strona.replace(/^([^#]*)#(.*)$/g,"$2");
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let numer=hn.innerHTML;
numer=parseInt(numer);
if(isNaN(numer)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return ;}
let tab_c=tab_section[c];
edit_action(numer,tab_c[1].match(/^[^#]*/g).toString(),tab_c[0],tab_c[1],tab_c[2]);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami){
if(!stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}else{
let uzupelniaj_sekcje_artykulow;
if(stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule){
uzupelniaj_sekcje_artykulow="tak";
}else{
uzupelniaj_sekcje_artykulow="";
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+link_strona+"|analiza=tak|uzupełniaj sekcje artykułów="+uzupelniaj_sekcje_artykulow+"|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
let a=headline.getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
a[0].setAttribute('title',stare);
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
}else{
edit_action(0,strona,hn,link_strona,czy_link_nie_w_naglowku);
if(stronasubst_aktualizowanie_nazw_artykulow){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+strona+"|analiza=tak|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceIteracyjne(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
/**/
tabs[i]=link_strona;
let czy=false;
for(let d in titles){
if(titles[d]==link_strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=link_strona;
}
if(tabstrona[link_strona]==null){
tabstrona[link_strona]=new Array();
}
let tab=tabstrona[link_strona];
let tablen=tab.length;
tabstrona[link_strona][tablen]=element;
}
async function PraceNaglowki(tab_promise2){
await StronicowyParser.muteks.zablokuj();
let promise;
if(element_strony==document){
let namespace=StronicowyParser.pageinfo.namespace;
let strona_podrecznika=((namespace!="")?(namespace+":"):"")+StronicowyParser.pageinfo.bookname;
promise=Promise.resolve(strona_podrecznika);
}else{
let zaan=$(element_strony).parents('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((zaan!==null)&&(zaan.length>0)){
let strona=zaan[0].getAttribute('nazwa_strony');
if(strona){
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](strona);
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}
if(tab_promise2){tab_promise2.push(true);}
promise.then(async (strona_podrecznika)=>{
await StronicowyParser.muteks.zablokuj();
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find(".klasa_nagłówka");
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)){
let g=0;
let tab_naglowka=new Array();
let tab_hn=new Array();
for(let z=0;z<klasa_naglowka.length;++z){
let pojedyncza_klasa_naglowka=klasa_naglowka[z];
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==pojedyncza_klasa_naglowka){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
let dana_klasa_naglowka=pojedyncza_klasa_naglowka.querySelector('.mw-headline');
if(dana_klasa_naglowka!==null){
if((dana_klasa_naglowka.parentNode!==null)&&(dana_klasa_naglowka.parentNode.tagName.toUpperCase().match(/^[Hh]\d+$/g))
&&(dana_klasa_naglowka.parentNode.parentNode!=null)&&(dana_klasa_naglowka.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&($(dana_klasa_naglowka.parentNode.parentNode).hasClass('klasa_nagłówka'))){
let naglowek=StronicowyParser.style.UsunStyle(dana_klasa_naglowka.innerHTML).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_").replace(/&/g,"&").replace(/ /g,"_");
let ww=1;
for(let x=0;x<tab_naglowka.length;++x){
if(tab_naglowka[x]==naglowek){
++ww;
}
}
naglowek=naglowek+((ww>1)?ww:"");
tab_naglowka[g]=naglowek;
tab_hn[g]=dana_klasa_naglowka.parentNode;
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, na stronie głównej podręcznika, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let nazwa_podrecznika=strona_podrecznika.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
let naglowek_sekcji_podrecznika=tab_naglowka[c].replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
edit_action(c+1,nazwa_podrecznika,tab_hn[c],nazwa_podrecznika+"#"+naglowek_sekcji_podrecznika,true);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();return;}
let headline=tab_hn[c].querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
++g;
}
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceNaglowki(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
function RozwazajNaglowki(){
let toc_fun=new StronicowyParser.ListaNodeTOC();
if((toc_fun.toc!==null)&&(toc_fun.toc.length>0)){
for(let w=0;w<toc_fun.toc.length;++w){
let czy_side_bar_toc=toc_fun.CzySideBarToc(toc_fun.toc[w]);
let ile_jest=0;
let li=toc_fun.toc[w].getElementsByTagName('li');
if((li!==null)&&(li.length>0)){
for(let dd=0;dd<li.length;++dd){
let element_li=li[dd];
let tocnumber;let toctext_wartosc;
if(czy_side_bar_toc){
tocnumber=element_li.querySelector('.sidebar-toc-numb');
if(!tocnumber){continue;}
toctext_wartosc=element_li.querySelector('.sidebar-toc-text').innerHTML.replace(new RegExp(StronicowyParser.wzor.BezZnakowSpecjalnych(tocnumber.outerHTML),"g"),"");
}else{
tocnumber=element_li.querySelector('.tocnumber');
toctext_wartosc=element_li.querySelector('.toctext').innerHTML;
}
if((tocnumber!==null)&&(toctext_wartosc!==null)){
let czy_jest=undefined;
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)&&(klasa_naglowka[ile_jest]!=null)){
let element_klasa_naglowka=klasa_naglowka[ile_jest];
let headline=element_klasa_naglowka.querySelector('.mw-headline');
if((headline!==null)
&&(headline.parentNode!==null)
&&(headline.parentNode.tagName.toUpperCase().match(/^H\d+$/))
&&(headline.parentNode.parentNode!==null)
&&(headline.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&(headline.parentNode.parentNode===element_klasa_naglowka)
){
let element_a;
if(czy_side_bar_toc){
element_a=tocnumber.parentNode.parentNode;
}else{
element_a=tocnumber.parentNode;
}
if(element_a.tagName.toUpperCase()=="A"){
let href=StronicowyParser.kodowanie.DecodeHtml(element_a.getAttribute('href'));
if(href!==null){
href=href.replace(/^#/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
let id_headline=headline.getAttribute('id');
if(id_headline!==null){
id_headline=id_headline.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
if(href!=id_headline){czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
if(czy_jest===undefined){ile_jest+=1;}
if((czy_jest===undefined)||(!czy_jest)){
let element_toctext=StronicowyParser.style.UsunStyle(toctext_wartosc).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ");
if(stronasubst_tablica_rozdzialow[element_toctext]==null){
stronasubst_tablica_rozdzialow[element_toctext]=new Array(tocnumber);
}else{
stronasubst_tablica_rozdzialow[element_toctext].push(tocnumber);
}
}
}
}
}
}
}
}
StronicowyParser.LimitTOC(true,stronasubst_ukrywaj_toc);
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],true,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(StronicowyParser.CzyWlaczycSideBarTOC(undefined,true))){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
RozwazajNaglowki();
if(stronasubst_mathml){
$("div.toc ul > li > a > span.toctext").toggleClass("mathml");
$("div.toc_spis ul > li > a > span.toctext").toggleClass("mathml");
$("div.mw-table-of-contents-container > nav.sidebar-toc ul > li > a > div.sidebar-toc-text").toggleClass("mathml");
}
function Strona(strona){
let strona_re=StronicowyParser.wzor.BezZnakowSpecjalnych(strona);
let re=new RegExp("^\\s*"+strona_re+"\\s*#","g");
return re;
}
function CzyArtykulyZNaglowkamiDlaStrony(re){
for(let s in titles){
let czy_hash=titles[s].match(re);
if(czy_hash){
return true;
}
}
return false;
}
let catlinks_fun=new StronicowyParser.LinkiKategorii();
await catlinks_fun.PobierzKategorieStrony();
for ( let t in titles ) {
let strona=titles[t].match(/^[^#]*/g).toString();
let szablon_artykulu;
let re_strona=Strona(strona);
let czy_naglowki=CzyArtykulyZNaglowkamiDlaStrony(re_strona);
if(!czy_naglowki){
szablon_artykulu="{{:"+strona+"}}";
}else{
/*---------------------------------*/
let rozdzial1=null;
let re=/^([^#]*)#(.*)$/g;
if(re.test(titles[t])){
rozdzial1=titles[t].replace(re,"$2");
rozdzial1=rozdzial1.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial1="";}
let rozdzial2=null;
let tit=titles[parseInt(t)+1];
if( tit && re.test(tit) && re_strona.test(tit)){
rozdzial2=tit.replace(re,"$2");
rozdzial2=rozdzial2.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial2="";}
/*---------------------------*/
szablon_artykulu="{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|TekstRozdziałuStrony|"+strona+"|"+rozdzial1+"|"+rozdzial2+"}}}}";
}
szablon_artykulu="{{PrzytnijTekst|"+szablon_artykulu+"}}";
if(stronasubst_opakuj_kategorie_ze_sortowaniem){
szablon_artykulu="{{OpakujKategorieZeSortowaniem|"+szablon_artykulu+"}}"
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text|categories',
title: strona,
text: "<div class=\"hn hn_"+t+"\">\n"+szablon_artykulu+"\n</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
catlinks_fun.AnalizaKategorii(data).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);}
WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2).then((result) => {}).catch((error) => {});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function CzyszczenieZZdarzeńTableOfContent(){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
}
}
CzyszczenieZZdarzeńTableOfContent();
let tab_promise2=new StronicowyParser.SugerowaneObiekty();
async function CzyStronaSubst(element,aktualna_strona,tab_promise2){
if(tab_promise2){tab_promise2.push(true);}
await StronicowyParser.muteks.zablokuj();
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: aktualna_strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.expandtemplates.wikitext;
if((wikikod!==null)&&(aktualna_strona!==null)){
if(tab_promise2){tab_promise2.push(true);}
StronaSubst(element,wikikod,aktualna_strona,tab_promise2).then((result) => {}).catch((error) => {});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
let aktualna_strona=StronicowyParser.pageinfo.fullname;
if(tab_promise2){tab_promise2.push(true,true);}
CzyStronaSubst(document,aktualna_strona,tab_promise2);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
function Progress(){
var c=document.createElement('div');
c.setAttribute("id","pasek_postępu")
c.setAttribute('style','margin-top:-2px;margin-left:-2px;position:absolute;width:250px;height:80px;border:1px solid black;box-sizing:border-box;padding:5px;background-color:white;display:flex;flex-direction:column;');
var label=document.createElement('label');
label.setAttribute('for','file1');
label.innerHTML="<span style=\"color:blue;\">Ukończone wątki: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%');
var span=document.createElement('span');
span.innerHTML="0%";
var span_0=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file1')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;');
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_1=c.appendChild(progress);
var label=document.createElement('label');
label.setAttribute('for','file2');
label.innerHTML="<span style=\"color:blue;\">Zwolnione blokaty: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_1=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file2')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%')
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_2=c.appendChild(progress);
function PozycjaXY(){
c.style.top=(window.scrollY+document.documentElement.clientHeight-parseFloat(c.style.height))+"px";
c.style.left=(window.scrollX+document.documentElement.clientWidth-parseFloat(c.style.width))+"px";
}
document.querySelector('body').appendChild(c);
PozycjaXY();
$(window).on('scroll',PozycjaXY);
$(window).on('resize',PozycjaXY);
return new Array(element_body_progress_1,element_body_progress_2,span_0,span_1);
}
var arr;
function __FUNKCJA(arr){
arr[0].setAttribute("value","0");
arr[1].setAttribute("value","0");
let dodatnie_0=tab_promise2.lengthPlus;
let ujemne_0=tab_promise2.lengthMinus;
let dodatnie_1=StronicowyParser.muteks.LiczbaBlokatPlus;
let ujemne_1=StronicowyParser.muteks.LiczbaBlokatMinus;
let postep_0=((dodatnie_0>0)?((ujemne_0/dodatnie_0)*100):0);
let postep_1=((dodatnie_1>0)?((ujemne_1/dodatnie_1)*100):0);
arr[0].setAttribute("value",postep_0);
arr[1].setAttribute("value",postep_1);
arr[2].innerHTML=(parseInt(postep_0*1000)/1000)+"%";
arr[3].innerHTML=(parseInt(postep_1*1000)/1000)+"%";
}
StronicowyParser.CzekajNaZakaczenie(tab_promise2,null,StronicowyParser.muteks,(tab_promise)=>{arr=Progress();__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);setTimeout(function(){let node_postep=document.getElementById('pasek_postępu');$(node_postep).remove();},2000);}).then(async (result) => {}).catch(()=>{});
};
StronicowyParser.WyswietlStronyKsiazki().then((result) => {}).catch((error) => {});
});
n8bdo2o79h554az879ug7odym5e4t02
437318
437317
2022-08-09T17:10:02Z
Persino
2851
javascript
text/javascript
mw.loader.using('ext.gadget.gConfig', function(){
let globalne_zmienne=this;
StronicowyParser.WyswietlStronyKsiazki=async function(){
await StronicowyParser.muteks.zablokuj();
let stronasubst_latex=undefined;
let stronasubst_mathml=undefined;
let stronasubst_opakuj_kategorie_ze_sortowaniem=undefined;
let stronasubst_ukrywaj_toc=undefined;
let stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=undefined;
let stronasubst_aktualizowanie_nazw_artykulow=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=undefined;
let stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=undefined;
let stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=undefined;
let stronasubst_nie_usuwaj_styli=undefined;
let stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=undefined;
if((globalne_zmienne.gConfig!==undefined)&&(globalne_zmienne.gConfig.register!==undefined)&&(globalne_zmienne.gConfig.get!==undefined)){
mw.messages.set({
'StronaSubst-name': 'Strona zbiorcza',
'StronaSubst-description-page': 'Wikibooks:StronicowyParser/StronaSubst',
'StronaSubst-latex': 'Zamiast wzorów, wstaw tekst latexowy, w przeciwnym przypadku jest w formie LaTeX.',
'StronaSubst-mathml': 'Zamiast wzorów latexowych, wstaw je w formie znaczników MathML.',
'StronaSubst-opakuj_kategorie_ze_sortowaniem' : 'W stronach zbiorczych opakowuje kategorie, w postaci ramki, dla każdego artykułu z osobna.',
'StronaSubst-ukrywaj_toc' : "Ukrywa, począwszy od jakiegoś poziomu wszystkich tam spisów treści, na stronach zbiorczych.",
'StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach' : "Włącza dymki, nad linkami, w ładowanych dynamicznie stronach, tworząc je inteligentnymi.",
'StronaSubst-aktualizowanie_nazw_artykulow' : 'Aktualizuje na podstawie strony głównej nazwy tylko artykułów.',
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami' : "Aktualizuje sekcje poszczegónych rozdziałów artykułów ładowanych rozdziałami, domyślnie według sekcji w tych jednostkach.",
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika' : 'Aktualizuje, sekcje artykułów ładowanych rozdziałami, na podstawie strony głównej książki, a nie jego artykułów.',
'StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej' : 'Aktualizuje nagłówki strony głównej podręcznika na stronie zbiorczej.',
'StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule' : 'Aktualizuje, brakujące sekcje rozdziałów ładowanych rozdziałami artykułów, według wpisów na stronie głównej, na stronie zbiorczej.',
'StronaSubst-nie_usuwaj_styli' : 'Nie usuwa styli z nagłówków ładowanych stron.',
'StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst' : 'Rozwijaj szablony oznaczone szablonem SzablonSubst.',
});
gConfig.register('StronaSubst', {name: mw.msg('StronaSubst-name'), descriptionPage: mw.msg('StronaSubst-description-page')}, [
{
name: 'latex',
desc: mw.msg('StronaSubst-latex'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_latex']
},
{
name: 'mathml',
desc: mw.msg('StronaSubst-mathml'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_mathml']
},
{
name: 'opakuj_kategorie_ze_sortowaniem',
desc: mw.msg('StronaSubst-opakuj_kategorie_ze_sortowaniem'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_opakuj_kategorie_ze_sortowaniem']
},
{
name: 'ukrywaj_toc',
desc: mw.msg('StronaSubst-ukrywaj_toc'),
type: 'integer',
deflt: 0,
validation: function(n){ if((n<0)||(n==1)){ throw 'Wartość dotycząca poziomu ukrywania spisów treści jest nieprawidłowa!' }; return n; },
legacy: [window, 'wb_stronasubst_ukrywaj_toc']
},
{
name: 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach',
desc: mw.msg('StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach']
},
{
name: 'aktualizowanie_nazw_artykulow',
desc: mw.msg('StronaSubst-aktualizowanie_nazw_artykulow'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nazw_artykulow']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika']
},
{
name: 'aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej',
desc: mw.msg('StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej']
},
{
name: 'aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule',
desc: mw.msg('StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule']
},
{
name: 'nie_usuwaj_styli',
desc: mw.msg('StronaSubst-nie_usuwaj_styli'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_nie_usuwaj_styli']
},
{
name: 'rozwijaj_szablony_oznaczone_szablonem_szablonsubst',
desc: mw.msg('StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst']
},
]);
stronasubst_latex = (gConfig.get('StronaSubst', 'latex')==true);
stronasubst_mathml = (((gConfig.get('StronaSubst', 'mathml'))&&(!stronasubst_latex))==true);
stronasubst_opakuj_kategorie_ze_sortowaniem = (gConfig.get('StronaSubst', 'opakuj_kategorie_ze_sortowaniem')==true);
stronasubst_ukrywaj_toc = gConfig.get('StronaSubst', 'ukrywaj_toc');
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach = gConfig.get('StronaSubst', 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach');
stronasubst_aktualizowanie_nazw_artykulow = (gConfig.get('StronaSubst', 'aktualizowanie_nazw_artykulow')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami = (gConfig.get('StronaSubst', 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika = (gConfig.get('StronaSubst','aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika')==true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej = (gConfig.get('StronaSubst','aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej')==true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule = (gConfig.get('StronaSubst','aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule')==true);
stronasubst_nie_usuwaj_styli = (gConfig.get('StronaSubst','nie_usuwaj_styli')==true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst = (gConfig.get('StronaSubst','rozwijaj_szablony_oznaczone_szablonem_szablonsubst')==true);
}
//let podglad=document.querySelector('body:not(.action-view)');
//if(podglad){return;}
let stronasubst_tablica_tych_samych=new Array();
let stronasubst_tablica_rozdzialow=new Array();
let stronasubst_tablica_alternatywnych_nazw=new Array();
stronasubst_latex=((stronasubst_latex!==undefined)?stronasubst_latex:false);
stronasubst_mathml=((stronasubst_mathml!==undefined)?stronasubst_mathml:true);
stronasubst_opakuj_kategorie_ze_sortowaniem=((stronasubst_opakuj_kategorie_ze_sortowaniem!==undefined)?stronasubst_opakuj_kategorie_ze_sortowaniem:false);
stronasubst_ukrywaj_toc=parseInt(((stronasubst_ukrywaj_toc!==undefined)?stronasubst_ukrywaj_toc:0));
stronasubst_ukrywaj_toc=((!isNaN(stronasubst_ukrywaj_toc))?stronasubst_ukrywaj_toc:0);
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=((stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach!==undefined)?stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach:true);
stronasubst_aktualizowanie_nazw_artykulow=((stronasubst_aktualizowanie_nazw_artykulow!==undefined)?stronasubst_aktualizowanie_nazw_artykulow:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika:true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=((stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej!==undefined)?stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej:true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=((stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule!==undefined)?stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule:true);
stronasubst_nie_usuwaj_styli=((stronasubst_nie_usuwaj_styli!==undefined)?stronasubst_nie_usuwaj_styli:true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=((stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst!==undefined)?stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst:true);
async function AnalizujDalejSzablonSubst(element_strony,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let rozdzial_ksiazki="rozdział_książki";
let el=$(element_strony).find('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((el!==null)&&(el.length>0)){
for(let i=0;i<el.length;++i){
let element_el=el[i];
let ksiazka=element_el.querySelector("."+rozdzial_ksiazki);
if(ksiazka){
let nazwa_strony=element_el.getAttribute('nazwa_strony');
if(tab_promise2){tab_promise2.push(true);}
CzyStronaSubst(element_el,nazwa_strony,tab_promise2);
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
async function WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let title=data.parse.title;
let wikikod=data.parse.text['*'];
let strona_hash;
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let t=tab_uzyskane[0];
if(t==undefined){
console.log("Nie wykryto znacznika lsth_\d+.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
strona_hash=titles[t];
let selflink=document.createElement('div');
selflink.innerHTML=wikikod;
let czy_selflink=selflink.getElementsByClassName('selflink');
if((czy_selflink!==null)&&(czy_selflink.length==1)){
let elements=tabstrona[strona_hash];
let a=document.createElement('a');/*Tworzenie linku*/
a.setAttribute('href',StronicowyParser.kodowanie.EncodeHtml(title));
a.innerHTML=strona_hash;
let span=document.createElement('span');
span.appendChild(a);
span.setAttribute("class","niw link");/*Dodawanie klasy, by inny skript JS to przeanalizował jako link*/
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo(span);
}
for(let q in elements){
let element=elements[q];
element.innerHTML="";
element.appendChild(span);
$(element).wrap(function(){return "<strong></strong>";});
let przed=document.createTextNode("{{:");
let po=document.createTextNode("}}");
element.insertBefore(przed,element.firstChild);
element.appendChild(po);
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=tab_uzyskane[1].innerHTML;
let elements=tabstrona[strona_hash];
for(let q in elements){
let element=elements[q];
element.innerHTML=wikikod;
StronicowyParser.ZamienLinkiNaLinkiDoStronyAktualnej(element,title,titles);
}
StronicowyParser.AktualizujSpisTresciModuluStrony(elements,tabs,strona_hash,stronasubst_tablica_alternatywnych_nazw,stronasubst_tablica_tych_samych,stronasubst_tablica_rozdzialow,true,stronasubst_latex,stronasubst_mathml)
let strona_start=$(elements[0]).parents(".strona_start");
let rodzic=undefined;
if((strona_start!==null)&&(strona_start.length>0)){
rodzic=strona_start[0];
}
StronicowyParser.IndeksujHeadLine(rodzic);
StronicowyParser.PrzeIndeksujWszystkieTOC(rodzic,true);
for(let q in elements){
let element=elements[q];
async function ElementDalszychObliczen(element,tab_promise2){
await StronicowyParser.muteks.zablokuj(true);
StronicowyParser.PoprawRozdzialyStron(element);
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu(element,tab_promise2);//Funkcja jako gadżet do numerowania rozdziałów.
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element,tab_promise2);
}
if((StronicowyParser.szablony&&StronicowyParser.szablony.LadujSzablon)&&(stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst)){
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(element,title,titles,undefined,tab_promise).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(()=>{
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika(element);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
ElementDalszychObliczen(element,tab_promise2);
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function ToogleTableOfContainer(panel){
let id=panel.target;
let tagname=id.tagName.toUpperCase();
//console.log(czy_klasa,tagname,"TYTAN)";
if(tagname=="BUTTON"){
let czy_klasa_1=$(id).hasClass('sidebar-toc-toggle');
let czy_klasa_2=$(id).hasClass('vector-toc-collapse-button');
if(czy_klasa_1){
$(id).parent().children().last().each((i,element)=>{
let expanded=$(id).attr('aria-expanded');
if(expanded=="false"){
$(element).css('display',"block");
$(element).closest('li').addClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','true');
}else if(expanded=="true"){
$(element).css('display',"none");
$(element).closest('li').removeClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','false');
}
});
}else if(czy_klasa_2){
$(id).parents('#sidebar-toc-label').siblings('ul').each((i,element)=>{
let ukryj=$(element).css('display');
if(ukryj!="none"){
$(element).css('display',"none");
id.innerHTML=" pokaż ";
}else{
$(element).css('display',"block");
id.innerHTML=" ukryj "
}
});
}
}
}
let mutekstoogle=new StronicowyParser.Muteks();
async function ScrollTableOfContainer(){
await mutekstoogle.zablokuj();
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header').first().each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=rect_sticky.height-15;
});
let parser=document.querySelector('#mw-content-text .mw-parser-output');
if(parser){
let rect=parser.getBoundingClientRect();
if(rect.top>=height_sticky){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item').first().addClass('sidebar-toc-list-item-active');
mutekstoogle.odblokuj();
return;
}
}else{
mutekstoogle.odblokuj();
return;
}
var str=$('#mw-content-text .mw-parser-output').find('h1, h2, h3, h4, h5, h6');
if((str!==null)&&(str.length>0)){
var naglowek;
for(i=0;i<str.length;++i){
let element=str[i];
let rect=element.getBoundingClientRect();
if(rect.top>=height_sticky){
let mw_naglowek=element.querySelector('.mw-headline');
if(mw_naglowek){
let id_naglowek=mw_naglowek.getAttribute('id');
let tak=false;
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+id_naglowek){
let display=window.getComputedStyle(element, null).getPropertyValue('display');
if(display!="none"){
tak=true;
}
}
});
if(tak){
naglowek=id_naglowek;
break;
}
}
}
}
if(naglowek){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+naglowek){
$(element).addClass('sidebar-toc-list-item-active');
}
});
}
}
mutekstoogle.odblokuj();
}
async function StronaSubst(element_strony,wikikod,aktualna_strona,tab_promise2){
await StronicowyParser.muteks.zablokuj();
StronicowyParser.NaprawNaglowkiStrony(element_strony,true);
let czy_wikikod=wikikod.match(/^[_\s]*$/g);
let strona_start=$('#mw-content-text .mw-parser-output .strona_start');
function CzyWszystkieNaglowkiWewnatrzStronaStart(){
let pole=$('#mw-content-text .mw-parser-output').find('h1,h2,h3,h4,h5,h6');
for(let i=0;i<pole.length;++i){
let s=strona_start.find(pole[i]);
if((s===null)||(s.length==0)){
return false;
}
}
return true;
}
if(czy_wikikod){
StronicowyParser.muteks.odblokuj();
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyArtykulu)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyArtykulu(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
let czy_numerowac=StronicowyParser.CzyWlaczycSideBarTOC(undefined,true);
if(czy_numerowac){
czy_numerowac=false;
tab_promise.push(true);
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: StronicowyParser.pageinfo.fullname,
text: '{{#invoke:StronicowyParser|CzyStronęNumerować|'+StronicowyParser.pageinfo.fullname+'}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
let wikikod=data.expandtemplates.wikitext;
let czy_wikikod=/^[_\s]*$/g.test(wikikod);
if(!czy_wikikod){
czy_numerowac=true;
}
tab_promise.pop();
}).catch(()=>{tab_promise.pop();});
}
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
let tab_promise=new Array(true);
StronicowyParser.LimitTOC(czy_numerowac,stronasubst_ukrywaj_toc);
StronicowyParser.szablony.LadujSzablon(null,null,null,czy_numerowac,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true)
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],czy_numerowac,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(czy_numerowac)){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
return;
}
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(null,null,null,undefined,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async (result) => {
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
await StronicowyParser.CzekajNaZakaczenie(tab_promise).then(async (result) => {}).catch(()=>{});
await StronicowyParser.muteks.zablokuj();
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
let rozdzial_ksiazki="rozdział_książki";
let tagclass=element_strony.getElementsByClassName(rozdzial_ksiazki);
if(tagclass===null){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return null;
}
let liczba_elementow=tagclass.length;
if(liczba_elementow==0){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return null;
}
let titles=new Array();
let tabstrona=new Array();
let tabs=new Array();
let tab_section=new Array();
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element_strony,tab_promise2);
}
let tab_hn=new Array();
async function edit_action(numer,strona,hn,link_strona,czy_link_nie_w_naglowku){
await StronicowyParser.muteks.zablokuj();
let linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection===null){
let editsection=document.createElement('span');
editsection.classList.add('mw-editsection');
let bracket_poczatek=document.createElement('span');
bracket_poczatek.classList.add('mw-editsection-bracket')
bracket_poczatek.innerHTML="[";
let a=document.createElement('a');
a.setAttribute('href',"/w/index.php?title="+StronicowyParser.kodowanie.EncodeHtml(strona,false,true)+"&action=edit"+((numer>0)?("§ion="+numer):""));
a.setAttribute('title',"Edytuj artykuł: "+link_strona);
a.innerHTML="edytuj";
let bracket_koniec=document.createElement('span');
bracket_koniec.classList.add('mw-editsection-bracket')
bracket_koniec.innerHTML="]";
editsection.appendChild(bracket_poczatek);
editsection.appendChild(a)
editsection.appendChild(bracket_koniec);
hn.appendChild(editsection);
}
linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection!==null){
let mw_editsection_bracket=linkstrony_editsection.querySelector('a');
if(mw_editsection_bracket!==null){
if(czy_link_nie_w_naglowku){
let a=document.createElement('a');
a.innerHTML="artykuł";
a.setAttribute("href",StronicowyParser.kodowanie.EncodeHtml("/wiki/"+StronicowyParser.kodowanie.EncodeHtml(link_strona,false,true)));
a.setAttribute("title","Zobacz artykuł: "+link_strona);
let span=document.createElement('span');
span.innerHTML="| ";
span.setAttribute('class',"mw-editsection-bracket")
let czy_ma=$(mw_editsection_bracket).parent().hasClass('link');
if(czy_ma){
let rodzic_mw_editsection_bracket=mw_editsection_bracket.parentNode;
let span2=linkstrony_editsection.insertBefore(span, rodzic_mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}else{
let span2=linkstrony_editsection.insertBefore(span, mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}
}
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(linkstrony_editsection).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
}
for (let i=0;i<liczba_elementow;++i){
let tagclassname=tagclass[i];
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find("."+rozdzial_ksiazki);
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==tagclassname){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
if(tagclassname.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let class_element=tagclassname.getElementsByClassName('strona_subst');
let element;
if((class_element!==null)&&(class_element.length==1)){
element=class_element[0];
if(element.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let czy_link_nie_w_naglowku;
let strona_headline=tagclassname.getElementsByClassName('mw-headline');
let link_strona;
if((strona_headline!==null)&&(strona_headline.length==1)){
strona_a=strona_headline[0].getElementsByTagName('a');
if((strona_a!==null)&&(strona_a.length==1)){
link_strona=StronicowyParser.kodowanie.DecodeHtml(strona_a[0].getAttribute('href'));
if(link_strona!==null){
let re=/\/wiki\//g;
if(re.test(link_strona)){
link_strona=link_strona.substring(6,link_strona.length);
czy_link_nie_w_naglowku=false;
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}
}else{
link_strona=StronicowyParser.style.UsunStyle(element.innerHTML);
czy_link_nie_w_naglowku=true;
}
}
let re = /^[_\s]*$/g;
let dopasowanie = re.test(link_strona);
if(dopasowanie){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return;
};
link_strona=link_strona.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ").replace(/&/g,"&").replace(/ /g," ");
let hash=link_strona.replace(/^([^#]*)#(.*)$/,"$2").replace(/&/g,"&").replace(/ /g,"_");
/**/
let hn=strona_headline[0].parentNode;
if((hn===null)||(!hn.tagName.toUpperCase().match(/^H\d+$/g))){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
tab_section[i]=new Array(hn,link_strona,czy_link_nie_w_naglowku);
let strona=link_strona.match(/^[^#]*/g).toString();
async function PraceIteracyjne(tab_promise2){
await StronicowyParser.muteks.zablokuj();
if(/#/g.test(link_strona)){
let hash=link_strona.replace(/^([^#]*)#(.*)$/g,"$2");
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let numer=hn.innerHTML;
numer=parseInt(numer);
if(isNaN(numer)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return ;}
let tab_c=tab_section[c];
edit_action(numer,tab_c[1].match(/^[^#]*/g).toString(),tab_c[0],tab_c[1],tab_c[2]);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami){
if(!stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}else{
let uzupelniaj_sekcje_artykulow;
if(stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule){
uzupelniaj_sekcje_artykulow="tak";
}else{
uzupelniaj_sekcje_artykulow="";
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+link_strona+"|analiza=tak|uzupełniaj sekcje artykułów="+uzupelniaj_sekcje_artykulow+"|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
let a=headline.getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
a[0].setAttribute('title',stare);
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
}else{
edit_action(0,strona,hn,link_strona,czy_link_nie_w_naglowku);
if(stronasubst_aktualizowanie_nazw_artykulow){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+strona+"|analiza=tak|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceIteracyjne(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
/**/
tabs[i]=link_strona;
let czy=false;
for(let d in titles){
if(titles[d]==link_strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=link_strona;
}
if(tabstrona[link_strona]==null){
tabstrona[link_strona]=new Array();
}
let tab=tabstrona[link_strona];
let tablen=tab.length;
tabstrona[link_strona][tablen]=element;
}
async function PraceNaglowki(tab_promise2){
await StronicowyParser.muteks.zablokuj();
let promise;
if(element_strony==document){
let namespace=StronicowyParser.pageinfo.namespace;
let strona_podrecznika=((namespace!="")?(namespace+":"):"")+StronicowyParser.pageinfo.bookname;
promise=Promise.resolve(strona_podrecznika);
}else{
let zaan=$(element_strony).parents('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((zaan!==null)&&(zaan.length>0)){
let strona=zaan[0].getAttribute('nazwa_strony');
if(strona){
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](strona);
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}
if(tab_promise2){tab_promise2.push(true);}
promise.then(async (strona_podrecznika)=>{
await StronicowyParser.muteks.zablokuj();
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find(".klasa_nagłówka");
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)){
let g=0;
let tab_naglowka=new Array();
let tab_hn=new Array();
for(let z=0;z<klasa_naglowka.length;++z){
let pojedyncza_klasa_naglowka=klasa_naglowka[z];
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==pojedyncza_klasa_naglowka){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
let dana_klasa_naglowka=pojedyncza_klasa_naglowka.querySelector('.mw-headline');
if(dana_klasa_naglowka!==null){
if((dana_klasa_naglowka.parentNode!==null)&&(dana_klasa_naglowka.parentNode.tagName.toUpperCase().match(/^[Hh]\d+$/g))
&&(dana_klasa_naglowka.parentNode.parentNode!=null)&&(dana_klasa_naglowka.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&($(dana_klasa_naglowka.parentNode.parentNode).hasClass('klasa_nagłówka'))){
let naglowek=StronicowyParser.style.UsunStyle(dana_klasa_naglowka.innerHTML).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_").replace(/&/g,"&").replace(/ /g,"_");
let ww=1;
for(let x=0;x<tab_naglowka.length;++x){
if(tab_naglowka[x]==naglowek){
++ww;
}
}
naglowek=naglowek+((ww>1)?ww:"");
tab_naglowka[g]=naglowek;
tab_hn[g]=dana_klasa_naglowka.parentNode;
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, na stronie głównej podręcznika, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let nazwa_podrecznika=strona_podrecznika.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
let naglowek_sekcji_podrecznika=tab_naglowka[c].replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
edit_action(c+1,nazwa_podrecznika,tab_hn[c],nazwa_podrecznika+"#"+naglowek_sekcji_podrecznika,true);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();return;}
let headline=tab_hn[c].querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
++g;
}
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceNaglowki(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
function RozwazajNaglowki(){
let toc_fun=new StronicowyParser.ListaNodeTOC();
if((toc_fun.toc!==null)&&(toc_fun.toc.length>0)){
for(let w=0;w<toc_fun.toc.length;++w){
let czy_side_bar_toc=toc_fun.CzySideBarToc(toc_fun.toc[w]);
let ile_jest=0;
let li=toc_fun.toc[w].getElementsByTagName('li');
if((li!==null)&&(li.length>0)){
for(let dd=0;dd<li.length;++dd){
let element_li=li[dd];
let tocnumber;let toctext_wartosc;
if(czy_side_bar_toc){
tocnumber=element_li.querySelector('.sidebar-toc-numb');
if(!tocnumber){continue;}
toctext_wartosc=element_li.querySelector('.sidebar-toc-text').innerHTML.replace(new RegExp(StronicowyParser.wzor.BezZnakowSpecjalnych(tocnumber.outerHTML),"g"),"");
}else{
tocnumber=element_li.querySelector('.tocnumber');
toctext_wartosc=element_li.querySelector('.toctext').innerHTML;
}
if((tocnumber!==null)&&(toctext_wartosc!==null)){
let czy_jest=undefined;
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)&&(klasa_naglowka[ile_jest]!=null)){
let element_klasa_naglowka=klasa_naglowka[ile_jest];
let headline=element_klasa_naglowka.querySelector('.mw-headline');
if((headline!==null)
&&(headline.parentNode!==null)
&&(headline.parentNode.tagName.toUpperCase().match(/^H\d+$/))
&&(headline.parentNode.parentNode!==null)
&&(headline.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&(headline.parentNode.parentNode===element_klasa_naglowka)
){
let element_a;
if(czy_side_bar_toc){
element_a=tocnumber.parentNode.parentNode;
}else{
element_a=tocnumber.parentNode;
}
if(element_a.tagName.toUpperCase()=="A"){
let href=StronicowyParser.kodowanie.DecodeHtml(element_a.getAttribute('href'));
if(href!==null){
href=href.replace(/^#/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
let id_headline=headline.getAttribute('id');
if(id_headline!==null){
id_headline=id_headline.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
if(href!=id_headline){czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
if(czy_jest===undefined){ile_jest+=1;}
if((czy_jest===undefined)||(!czy_jest)){
let element_toctext=StronicowyParser.style.UsunStyle(toctext_wartosc).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ");
if(stronasubst_tablica_rozdzialow[element_toctext]==null){
stronasubst_tablica_rozdzialow[element_toctext]=new Array(tocnumber);
}else{
stronasubst_tablica_rozdzialow[element_toctext].push(tocnumber);
}
}
}
}
}
}
}
}
StronicowyParser.LimitTOC(true,stronasubst_ukrywaj_toc);
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],true,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(StronicowyParser.CzyWlaczycSideBarTOC(undefined,true))){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
RozwazajNaglowki();
if(stronasubst_mathml){
$("div.toc ul > li > a > span.toctext").toggleClass("mathml");
$("div.toc_spis ul > li > a > span.toctext").toggleClass("mathml");
$("div.mw-table-of-contents-container > nav.sidebar-toc ul > li > a > div.sidebar-toc-text").toggleClass("mathml");
}
function Strona(strona){
let strona_re=StronicowyParser.wzor.BezZnakowSpecjalnych(strona);
let re=new RegExp("^\\s*"+strona_re+"\\s*#","g");
return re;
}
function CzyArtykulyZNaglowkamiDlaStrony(re){
for(let s in titles){
let czy_hash=titles[s].match(re);
if(czy_hash){
return true;
}
}
return false;
}
let catlinks_fun=new StronicowyParser.LinkiKategorii();
await catlinks_fun.PobierzKategorieStrony();
for ( let t in titles ) {
let strona=titles[t].match(/^[^#]*/g).toString();
let szablon_artykulu;
let re_strona=Strona(strona);
let czy_naglowki=CzyArtykulyZNaglowkamiDlaStrony(re_strona);
if(!czy_naglowki){
szablon_artykulu="{{:"+strona+"}}";
}else{
/*---------------------------------*/
let rozdzial1=null;
let re=/^([^#]*)#(.*)$/g;
if(re.test(titles[t])){
rozdzial1=titles[t].replace(re,"$2");
rozdzial1=rozdzial1.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial1="";}
let rozdzial2=null;
let tit=titles[parseInt(t)+1];
if( tit && re.test(tit) && re_strona.test(tit)){
rozdzial2=tit.replace(re,"$2");
rozdzial2=rozdzial2.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial2="";}
/*---------------------------*/
szablon_artykulu="{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|TekstRozdziałuStrony|"+strona+"|"+rozdzial1+"|"+rozdzial2+"}}}}";
}
szablon_artykulu="{{PrzytnijTekst|"+szablon_artykulu+"}}";
if(stronasubst_opakuj_kategorie_ze_sortowaniem){
szablon_artykulu="{{OpakujKategorieZeSortowaniem|"+szablon_artykulu+"}}"
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text|categories',
title: strona,
text: "<div class=\"hn hn_"+t+"\">\n"+szablon_artykulu+"\n</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
catlinks_fun.AnalizaKategorii(data).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);}
WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2).then((result) => {}).catch((error) => {});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function CzyszczenieZZdarzeńTableOfContent(){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
}
}
CzyszczenieZZdarzeńTableOfContent();
let tab_promise2=new StronicowyParser.SugerowaneObiekty();
async function CzyStronaSubst(element,aktualna_strona,tab_promise2){
if(tab_promise2){tab_promise2.push(true);}
await StronicowyParser.muteks.zablokuj();
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: aktualna_strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.expandtemplates.wikitext;
if((wikikod!==null)&&(aktualna_strona!==null)){
if(tab_promise2){tab_promise2.push(true);}
StronaSubst(element,wikikod,aktualna_strona,tab_promise2).then((result) => {}).catch((error) => {});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
let aktualna_strona=StronicowyParser.pageinfo.fullname;
if(tab_promise2){tab_promise2.push(true,true);}
CzyStronaSubst(document,aktualna_strona,tab_promise2);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
function Progress(){
var c=document.createElement('div');
c.setAttribute("id","pasek_postępu")
c.setAttribute('style','margin-top:-2px;margin-left:-2px;position:absolute;width:250px;height:80px;border:1px solid black;box-sizing:border-box;padding:5px;background-color:white;display:flex;flex-direction:column;');
var label=document.createElement('label');
label.setAttribute('for','file1');
label.innerHTML="<span style=\"color:blue;\">Ukończone wątki: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%');
var span=document.createElement('span');
span.innerHTML="0%";
var span_0=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file1')
progress.setAttribute('style','margin-left:5px;width:95%;height:auto;');
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_1=c.appendChild(progress);
var label=document.createElement('label');
label.setAttribute('for','file2');
label.innerHTML="<span style=\"color:blue;\">Zwolnione blokaty: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_1=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file2')
progress.setAttribute('style','margin-left:5px;width:95%;height:auto')
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_2=c.appendChild(progress);
function PozycjaXY(){
c.style.top=(window.scrollY+document.documentElement.clientHeight-parseFloat(c.style.height))+"px";
c.style.left=(window.scrollX+document.documentElement.clientWidth-parseFloat(c.style.width))+"px";
}
document.querySelector('body').appendChild(c);
PozycjaXY();
$(window).on('scroll',PozycjaXY);
$(window).on('resize',PozycjaXY);
return new Array(element_body_progress_1,element_body_progress_2,span_0,span_1);
}
var arr;
function __FUNKCJA(arr){
arr[0].setAttribute("value","0");
arr[1].setAttribute("value","0");
let dodatnie_0=tab_promise2.lengthPlus;
let ujemne_0=tab_promise2.lengthMinus;
let dodatnie_1=StronicowyParser.muteks.LiczbaBlokatPlus;
let ujemne_1=StronicowyParser.muteks.LiczbaBlokatMinus;
let postep_0=((dodatnie_0>0)?((ujemne_0/dodatnie_0)*100):0);
let postep_1=((dodatnie_1>0)?((ujemne_1/dodatnie_1)*100):0);
arr[0].setAttribute("value",postep_0);
arr[1].setAttribute("value",postep_1);
arr[2].innerHTML=(parseInt(postep_0*1000)/1000)+"%";
arr[3].innerHTML=(parseInt(postep_1*1000)/1000)+"%";
}
StronicowyParser.CzekajNaZakaczenie(tab_promise2,null,StronicowyParser.muteks,(tab_promise)=>{arr=Progress();__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);setTimeout(function(){let node_postep=document.getElementById('pasek_postępu');$(node_postep).remove();},2000);}).then(async (result) => {}).catch(()=>{});
};
StronicowyParser.WyswietlStronyKsiazki().then((result) => {}).catch((error) => {});
});
0fvzfjvm8f5cx42rp6k9lebdc071gqk
437319
437318
2022-08-09T17:11:37Z
Persino
2851
javascript
text/javascript
mw.loader.using('ext.gadget.gConfig', function(){
let globalne_zmienne=this;
StronicowyParser.WyswietlStronyKsiazki=async function(){
await StronicowyParser.muteks.zablokuj();
let stronasubst_latex=undefined;
let stronasubst_mathml=undefined;
let stronasubst_opakuj_kategorie_ze_sortowaniem=undefined;
let stronasubst_ukrywaj_toc=undefined;
let stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=undefined;
let stronasubst_aktualizowanie_nazw_artykulow=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=undefined;
let stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=undefined;
let stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=undefined;
let stronasubst_nie_usuwaj_styli=undefined;
let stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=undefined;
if((globalne_zmienne.gConfig!==undefined)&&(globalne_zmienne.gConfig.register!==undefined)&&(globalne_zmienne.gConfig.get!==undefined)){
mw.messages.set({
'StronaSubst-name': 'Strona zbiorcza',
'StronaSubst-description-page': 'Wikibooks:StronicowyParser/StronaSubst',
'StronaSubst-latex': 'Zamiast wzorów, wstaw tekst latexowy, w przeciwnym przypadku jest w formie LaTeX.',
'StronaSubst-mathml': 'Zamiast wzorów latexowych, wstaw je w formie znaczników MathML.',
'StronaSubst-opakuj_kategorie_ze_sortowaniem' : 'W stronach zbiorczych opakowuje kategorie, w postaci ramki, dla każdego artykułu z osobna.',
'StronaSubst-ukrywaj_toc' : "Ukrywa, począwszy od jakiegoś poziomu wszystkich tam spisów treści, na stronach zbiorczych.",
'StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach' : "Włącza dymki, nad linkami, w ładowanych dynamicznie stronach, tworząc je inteligentnymi.",
'StronaSubst-aktualizowanie_nazw_artykulow' : 'Aktualizuje na podstawie strony głównej nazwy tylko artykułów.',
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami' : "Aktualizuje sekcje poszczegónych rozdziałów artykułów ładowanych rozdziałami, domyślnie według sekcji w tych jednostkach.",
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika' : 'Aktualizuje, sekcje artykułów ładowanych rozdziałami, na podstawie strony głównej książki, a nie jego artykułów.',
'StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej' : 'Aktualizuje nagłówki strony głównej podręcznika na stronie zbiorczej.',
'StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule' : 'Aktualizuje, brakujące sekcje rozdziałów ładowanych rozdziałami artykułów, według wpisów na stronie głównej, na stronie zbiorczej.',
'StronaSubst-nie_usuwaj_styli' : 'Nie usuwa styli z nagłówków ładowanych stron.',
'StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst' : 'Rozwijaj szablony oznaczone szablonem SzablonSubst.',
});
gConfig.register('StronaSubst', {name: mw.msg('StronaSubst-name'), descriptionPage: mw.msg('StronaSubst-description-page')}, [
{
name: 'latex',
desc: mw.msg('StronaSubst-latex'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_latex']
},
{
name: 'mathml',
desc: mw.msg('StronaSubst-mathml'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_mathml']
},
{
name: 'opakuj_kategorie_ze_sortowaniem',
desc: mw.msg('StronaSubst-opakuj_kategorie_ze_sortowaniem'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_opakuj_kategorie_ze_sortowaniem']
},
{
name: 'ukrywaj_toc',
desc: mw.msg('StronaSubst-ukrywaj_toc'),
type: 'integer',
deflt: 0,
validation: function(n){ if((n<0)||(n==1)){ throw 'Wartość dotycząca poziomu ukrywania spisów treści jest nieprawidłowa!' }; return n; },
legacy: [window, 'wb_stronasubst_ukrywaj_toc']
},
{
name: 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach',
desc: mw.msg('StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach']
},
{
name: 'aktualizowanie_nazw_artykulow',
desc: mw.msg('StronaSubst-aktualizowanie_nazw_artykulow'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nazw_artykulow']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika']
},
{
name: 'aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej',
desc: mw.msg('StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej']
},
{
name: 'aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule',
desc: mw.msg('StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule']
},
{
name: 'nie_usuwaj_styli',
desc: mw.msg('StronaSubst-nie_usuwaj_styli'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_nie_usuwaj_styli']
},
{
name: 'rozwijaj_szablony_oznaczone_szablonem_szablonsubst',
desc: mw.msg('StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst']
},
]);
stronasubst_latex = (gConfig.get('StronaSubst', 'latex')==true);
stronasubst_mathml = (((gConfig.get('StronaSubst', 'mathml'))&&(!stronasubst_latex))==true);
stronasubst_opakuj_kategorie_ze_sortowaniem = (gConfig.get('StronaSubst', 'opakuj_kategorie_ze_sortowaniem')==true);
stronasubst_ukrywaj_toc = gConfig.get('StronaSubst', 'ukrywaj_toc');
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach = gConfig.get('StronaSubst', 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach');
stronasubst_aktualizowanie_nazw_artykulow = (gConfig.get('StronaSubst', 'aktualizowanie_nazw_artykulow')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami = (gConfig.get('StronaSubst', 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika = (gConfig.get('StronaSubst','aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika')==true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej = (gConfig.get('StronaSubst','aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej')==true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule = (gConfig.get('StronaSubst','aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule')==true);
stronasubst_nie_usuwaj_styli = (gConfig.get('StronaSubst','nie_usuwaj_styli')==true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst = (gConfig.get('StronaSubst','rozwijaj_szablony_oznaczone_szablonem_szablonsubst')==true);
}
//let podglad=document.querySelector('body:not(.action-view)');
//if(podglad){return;}
let stronasubst_tablica_tych_samych=new Array();
let stronasubst_tablica_rozdzialow=new Array();
let stronasubst_tablica_alternatywnych_nazw=new Array();
stronasubst_latex=((stronasubst_latex!==undefined)?stronasubst_latex:false);
stronasubst_mathml=((stronasubst_mathml!==undefined)?stronasubst_mathml:true);
stronasubst_opakuj_kategorie_ze_sortowaniem=((stronasubst_opakuj_kategorie_ze_sortowaniem!==undefined)?stronasubst_opakuj_kategorie_ze_sortowaniem:false);
stronasubst_ukrywaj_toc=parseInt(((stronasubst_ukrywaj_toc!==undefined)?stronasubst_ukrywaj_toc:0));
stronasubst_ukrywaj_toc=((!isNaN(stronasubst_ukrywaj_toc))?stronasubst_ukrywaj_toc:0);
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=((stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach!==undefined)?stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach:true);
stronasubst_aktualizowanie_nazw_artykulow=((stronasubst_aktualizowanie_nazw_artykulow!==undefined)?stronasubst_aktualizowanie_nazw_artykulow:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika:true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=((stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej!==undefined)?stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej:true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=((stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule!==undefined)?stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule:true);
stronasubst_nie_usuwaj_styli=((stronasubst_nie_usuwaj_styli!==undefined)?stronasubst_nie_usuwaj_styli:true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=((stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst!==undefined)?stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst:true);
async function AnalizujDalejSzablonSubst(element_strony,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let rozdzial_ksiazki="rozdział_książki";
let el=$(element_strony).find('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((el!==null)&&(el.length>0)){
for(let i=0;i<el.length;++i){
let element_el=el[i];
let ksiazka=element_el.querySelector("."+rozdzial_ksiazki);
if(ksiazka){
let nazwa_strony=element_el.getAttribute('nazwa_strony');
if(tab_promise2){tab_promise2.push(true);}
CzyStronaSubst(element_el,nazwa_strony,tab_promise2);
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
async function WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let title=data.parse.title;
let wikikod=data.parse.text['*'];
let strona_hash;
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let t=tab_uzyskane[0];
if(t==undefined){
console.log("Nie wykryto znacznika lsth_\d+.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
strona_hash=titles[t];
let selflink=document.createElement('div');
selflink.innerHTML=wikikod;
let czy_selflink=selflink.getElementsByClassName('selflink');
if((czy_selflink!==null)&&(czy_selflink.length==1)){
let elements=tabstrona[strona_hash];
let a=document.createElement('a');/*Tworzenie linku*/
a.setAttribute('href',StronicowyParser.kodowanie.EncodeHtml(title));
a.innerHTML=strona_hash;
let span=document.createElement('span');
span.appendChild(a);
span.setAttribute("class","niw link");/*Dodawanie klasy, by inny skript JS to przeanalizował jako link*/
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo(span);
}
for(let q in elements){
let element=elements[q];
element.innerHTML="";
element.appendChild(span);
$(element).wrap(function(){return "<strong></strong>";});
let przed=document.createTextNode("{{:");
let po=document.createTextNode("}}");
element.insertBefore(przed,element.firstChild);
element.appendChild(po);
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=tab_uzyskane[1].innerHTML;
let elements=tabstrona[strona_hash];
for(let q in elements){
let element=elements[q];
element.innerHTML=wikikod;
StronicowyParser.ZamienLinkiNaLinkiDoStronyAktualnej(element,title,titles);
}
StronicowyParser.AktualizujSpisTresciModuluStrony(elements,tabs,strona_hash,stronasubst_tablica_alternatywnych_nazw,stronasubst_tablica_tych_samych,stronasubst_tablica_rozdzialow,true,stronasubst_latex,stronasubst_mathml)
let strona_start=$(elements[0]).parents(".strona_start");
let rodzic=undefined;
if((strona_start!==null)&&(strona_start.length>0)){
rodzic=strona_start[0];
}
StronicowyParser.IndeksujHeadLine(rodzic);
StronicowyParser.PrzeIndeksujWszystkieTOC(rodzic,true);
for(let q in elements){
let element=elements[q];
async function ElementDalszychObliczen(element,tab_promise2){
await StronicowyParser.muteks.zablokuj(true);
StronicowyParser.PoprawRozdzialyStron(element);
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu(element,tab_promise2);//Funkcja jako gadżet do numerowania rozdziałów.
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element,tab_promise2);
}
if((StronicowyParser.szablony&&StronicowyParser.szablony.LadujSzablon)&&(stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst)){
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(element,title,titles,undefined,tab_promise).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(()=>{
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika(element);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
ElementDalszychObliczen(element,tab_promise2);
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function ToogleTableOfContainer(panel){
let id=panel.target;
let tagname=id.tagName.toUpperCase();
//console.log(czy_klasa,tagname,"TYTAN)";
if(tagname=="BUTTON"){
let czy_klasa_1=$(id).hasClass('sidebar-toc-toggle');
let czy_klasa_2=$(id).hasClass('vector-toc-collapse-button');
if(czy_klasa_1){
$(id).parent().children().last().each((i,element)=>{
let expanded=$(id).attr('aria-expanded');
if(expanded=="false"){
$(element).css('display',"block");
$(element).closest('li').addClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','true');
}else if(expanded=="true"){
$(element).css('display',"none");
$(element).closest('li').removeClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','false');
}
});
}else if(czy_klasa_2){
$(id).parents('#sidebar-toc-label').siblings('ul').each((i,element)=>{
let ukryj=$(element).css('display');
if(ukryj!="none"){
$(element).css('display',"none");
id.innerHTML=" pokaż ";
}else{
$(element).css('display',"block");
id.innerHTML=" ukryj "
}
});
}
}
}
let mutekstoogle=new StronicowyParser.Muteks();
async function ScrollTableOfContainer(){
await mutekstoogle.zablokuj();
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header').first().each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=rect_sticky.height-15;
});
let parser=document.querySelector('#mw-content-text .mw-parser-output');
if(parser){
let rect=parser.getBoundingClientRect();
if(rect.top>=height_sticky){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item').first().addClass('sidebar-toc-list-item-active');
mutekstoogle.odblokuj();
return;
}
}else{
mutekstoogle.odblokuj();
return;
}
var str=$('#mw-content-text .mw-parser-output').find('h1, h2, h3, h4, h5, h6');
if((str!==null)&&(str.length>0)){
var naglowek;
for(i=0;i<str.length;++i){
let element=str[i];
let rect=element.getBoundingClientRect();
if(rect.top>=height_sticky){
let mw_naglowek=element.querySelector('.mw-headline');
if(mw_naglowek){
let id_naglowek=mw_naglowek.getAttribute('id');
let tak=false;
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+id_naglowek){
let display=window.getComputedStyle(element, null).getPropertyValue('display');
if(display!="none"){
tak=true;
}
}
});
if(tak){
naglowek=id_naglowek;
break;
}
}
}
}
if(naglowek){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+naglowek){
$(element).addClass('sidebar-toc-list-item-active');
}
});
}
}
mutekstoogle.odblokuj();
}
async function StronaSubst(element_strony,wikikod,aktualna_strona,tab_promise2){
await StronicowyParser.muteks.zablokuj();
StronicowyParser.NaprawNaglowkiStrony(element_strony,true);
let czy_wikikod=wikikod.match(/^[_\s]*$/g);
let strona_start=$('#mw-content-text .mw-parser-output .strona_start');
function CzyWszystkieNaglowkiWewnatrzStronaStart(){
let pole=$('#mw-content-text .mw-parser-output').find('h1,h2,h3,h4,h5,h6');
for(let i=0;i<pole.length;++i){
let s=strona_start.find(pole[i]);
if((s===null)||(s.length==0)){
return false;
}
}
return true;
}
if(czy_wikikod){
StronicowyParser.muteks.odblokuj();
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyArtykulu)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyArtykulu(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
let czy_numerowac=StronicowyParser.CzyWlaczycSideBarTOC(undefined,true);
if(czy_numerowac){
czy_numerowac=false;
tab_promise.push(true);
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: StronicowyParser.pageinfo.fullname,
text: '{{#invoke:StronicowyParser|CzyStronęNumerować|'+StronicowyParser.pageinfo.fullname+'}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
let wikikod=data.expandtemplates.wikitext;
let czy_wikikod=/^[_\s]*$/g.test(wikikod);
if(!czy_wikikod){
czy_numerowac=true;
}
tab_promise.pop();
}).catch(()=>{tab_promise.pop();});
}
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
let tab_promise=new Array(true);
StronicowyParser.LimitTOC(czy_numerowac,stronasubst_ukrywaj_toc);
StronicowyParser.szablony.LadujSzablon(null,null,null,czy_numerowac,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true)
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],czy_numerowac,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(czy_numerowac)){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
return;
}
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(null,null,null,undefined,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async (result) => {
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
await StronicowyParser.CzekajNaZakaczenie(tab_promise).then(async (result) => {}).catch(()=>{});
await StronicowyParser.muteks.zablokuj();
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
let rozdzial_ksiazki="rozdział_książki";
let tagclass=element_strony.getElementsByClassName(rozdzial_ksiazki);
if(tagclass===null){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return null;
}
let liczba_elementow=tagclass.length;
if(liczba_elementow==0){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return null;
}
let titles=new Array();
let tabstrona=new Array();
let tabs=new Array();
let tab_section=new Array();
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element_strony,tab_promise2);
}
let tab_hn=new Array();
async function edit_action(numer,strona,hn,link_strona,czy_link_nie_w_naglowku){
await StronicowyParser.muteks.zablokuj();
let linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection===null){
let editsection=document.createElement('span');
editsection.classList.add('mw-editsection');
let bracket_poczatek=document.createElement('span');
bracket_poczatek.classList.add('mw-editsection-bracket')
bracket_poczatek.innerHTML="[";
let a=document.createElement('a');
a.setAttribute('href',"/w/index.php?title="+StronicowyParser.kodowanie.EncodeHtml(strona,false,true)+"&action=edit"+((numer>0)?("§ion="+numer):""));
a.setAttribute('title',"Edytuj artykuł: "+link_strona);
a.innerHTML="edytuj";
let bracket_koniec=document.createElement('span');
bracket_koniec.classList.add('mw-editsection-bracket')
bracket_koniec.innerHTML="]";
editsection.appendChild(bracket_poczatek);
editsection.appendChild(a)
editsection.appendChild(bracket_koniec);
hn.appendChild(editsection);
}
linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection!==null){
let mw_editsection_bracket=linkstrony_editsection.querySelector('a');
if(mw_editsection_bracket!==null){
if(czy_link_nie_w_naglowku){
let a=document.createElement('a');
a.innerHTML="artykuł";
a.setAttribute("href",StronicowyParser.kodowanie.EncodeHtml("/wiki/"+StronicowyParser.kodowanie.EncodeHtml(link_strona,false,true)));
a.setAttribute("title","Zobacz artykuł: "+link_strona);
let span=document.createElement('span');
span.innerHTML="| ";
span.setAttribute('class',"mw-editsection-bracket")
let czy_ma=$(mw_editsection_bracket).parent().hasClass('link');
if(czy_ma){
let rodzic_mw_editsection_bracket=mw_editsection_bracket.parentNode;
let span2=linkstrony_editsection.insertBefore(span, rodzic_mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}else{
let span2=linkstrony_editsection.insertBefore(span, mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}
}
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(linkstrony_editsection).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
}
for (let i=0;i<liczba_elementow;++i){
let tagclassname=tagclass[i];
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find("."+rozdzial_ksiazki);
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==tagclassname){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
if(tagclassname.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let class_element=tagclassname.getElementsByClassName('strona_subst');
let element;
if((class_element!==null)&&(class_element.length==1)){
element=class_element[0];
if(element.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let czy_link_nie_w_naglowku;
let strona_headline=tagclassname.getElementsByClassName('mw-headline');
let link_strona;
if((strona_headline!==null)&&(strona_headline.length==1)){
strona_a=strona_headline[0].getElementsByTagName('a');
if((strona_a!==null)&&(strona_a.length==1)){
link_strona=StronicowyParser.kodowanie.DecodeHtml(strona_a[0].getAttribute('href'));
if(link_strona!==null){
let re=/\/wiki\//g;
if(re.test(link_strona)){
link_strona=link_strona.substring(6,link_strona.length);
czy_link_nie_w_naglowku=false;
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}
}else{
link_strona=StronicowyParser.style.UsunStyle(element.innerHTML);
czy_link_nie_w_naglowku=true;
}
}
let re = /^[_\s]*$/g;
let dopasowanie = re.test(link_strona);
if(dopasowanie){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return;
};
link_strona=link_strona.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ").replace(/&/g,"&").replace(/ /g," ");
let hash=link_strona.replace(/^([^#]*)#(.*)$/,"$2").replace(/&/g,"&").replace(/ /g,"_");
/**/
let hn=strona_headline[0].parentNode;
if((hn===null)||(!hn.tagName.toUpperCase().match(/^H\d+$/g))){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
tab_section[i]=new Array(hn,link_strona,czy_link_nie_w_naglowku);
let strona=link_strona.match(/^[^#]*/g).toString();
async function PraceIteracyjne(tab_promise2){
await StronicowyParser.muteks.zablokuj();
if(/#/g.test(link_strona)){
let hash=link_strona.replace(/^([^#]*)#(.*)$/g,"$2");
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let numer=hn.innerHTML;
numer=parseInt(numer);
if(isNaN(numer)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return ;}
let tab_c=tab_section[c];
edit_action(numer,tab_c[1].match(/^[^#]*/g).toString(),tab_c[0],tab_c[1],tab_c[2]);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami){
if(!stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}else{
let uzupelniaj_sekcje_artykulow;
if(stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule){
uzupelniaj_sekcje_artykulow="tak";
}else{
uzupelniaj_sekcje_artykulow="";
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+link_strona+"|analiza=tak|uzupełniaj sekcje artykułów="+uzupelniaj_sekcje_artykulow+"|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
let a=headline.getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
a[0].setAttribute('title',stare);
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
}else{
edit_action(0,strona,hn,link_strona,czy_link_nie_w_naglowku);
if(stronasubst_aktualizowanie_nazw_artykulow){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+strona+"|analiza=tak|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceIteracyjne(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
/**/
tabs[i]=link_strona;
let czy=false;
for(let d in titles){
if(titles[d]==link_strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=link_strona;
}
if(tabstrona[link_strona]==null){
tabstrona[link_strona]=new Array();
}
let tab=tabstrona[link_strona];
let tablen=tab.length;
tabstrona[link_strona][tablen]=element;
}
async function PraceNaglowki(tab_promise2){
await StronicowyParser.muteks.zablokuj();
let promise;
if(element_strony==document){
let namespace=StronicowyParser.pageinfo.namespace;
let strona_podrecznika=((namespace!="")?(namespace+":"):"")+StronicowyParser.pageinfo.bookname;
promise=Promise.resolve(strona_podrecznika);
}else{
let zaan=$(element_strony).parents('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((zaan!==null)&&(zaan.length>0)){
let strona=zaan[0].getAttribute('nazwa_strony');
if(strona){
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](strona);
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}
if(tab_promise2){tab_promise2.push(true);}
promise.then(async (strona_podrecznika)=>{
await StronicowyParser.muteks.zablokuj();
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find(".klasa_nagłówka");
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)){
let g=0;
let tab_naglowka=new Array();
let tab_hn=new Array();
for(let z=0;z<klasa_naglowka.length;++z){
let pojedyncza_klasa_naglowka=klasa_naglowka[z];
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==pojedyncza_klasa_naglowka){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
let dana_klasa_naglowka=pojedyncza_klasa_naglowka.querySelector('.mw-headline');
if(dana_klasa_naglowka!==null){
if((dana_klasa_naglowka.parentNode!==null)&&(dana_klasa_naglowka.parentNode.tagName.toUpperCase().match(/^[Hh]\d+$/g))
&&(dana_klasa_naglowka.parentNode.parentNode!=null)&&(dana_klasa_naglowka.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&($(dana_klasa_naglowka.parentNode.parentNode).hasClass('klasa_nagłówka'))){
let naglowek=StronicowyParser.style.UsunStyle(dana_klasa_naglowka.innerHTML).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_").replace(/&/g,"&").replace(/ /g,"_");
let ww=1;
for(let x=0;x<tab_naglowka.length;++x){
if(tab_naglowka[x]==naglowek){
++ww;
}
}
naglowek=naglowek+((ww>1)?ww:"");
tab_naglowka[g]=naglowek;
tab_hn[g]=dana_klasa_naglowka.parentNode;
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, na stronie głównej podręcznika, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let nazwa_podrecznika=strona_podrecznika.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
let naglowek_sekcji_podrecznika=tab_naglowka[c].replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
edit_action(c+1,nazwa_podrecznika,tab_hn[c],nazwa_podrecznika+"#"+naglowek_sekcji_podrecznika,true);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();return;}
let headline=tab_hn[c].querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
++g;
}
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceNaglowki(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
function RozwazajNaglowki(){
let toc_fun=new StronicowyParser.ListaNodeTOC();
if((toc_fun.toc!==null)&&(toc_fun.toc.length>0)){
for(let w=0;w<toc_fun.toc.length;++w){
let czy_side_bar_toc=toc_fun.CzySideBarToc(toc_fun.toc[w]);
let ile_jest=0;
let li=toc_fun.toc[w].getElementsByTagName('li');
if((li!==null)&&(li.length>0)){
for(let dd=0;dd<li.length;++dd){
let element_li=li[dd];
let tocnumber;let toctext_wartosc;
if(czy_side_bar_toc){
tocnumber=element_li.querySelector('.sidebar-toc-numb');
if(!tocnumber){continue;}
toctext_wartosc=element_li.querySelector('.sidebar-toc-text').innerHTML.replace(new RegExp(StronicowyParser.wzor.BezZnakowSpecjalnych(tocnumber.outerHTML),"g"),"");
}else{
tocnumber=element_li.querySelector('.tocnumber');
toctext_wartosc=element_li.querySelector('.toctext').innerHTML;
}
if((tocnumber!==null)&&(toctext_wartosc!==null)){
let czy_jest=undefined;
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)&&(klasa_naglowka[ile_jest]!=null)){
let element_klasa_naglowka=klasa_naglowka[ile_jest];
let headline=element_klasa_naglowka.querySelector('.mw-headline');
if((headline!==null)
&&(headline.parentNode!==null)
&&(headline.parentNode.tagName.toUpperCase().match(/^H\d+$/))
&&(headline.parentNode.parentNode!==null)
&&(headline.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&(headline.parentNode.parentNode===element_klasa_naglowka)
){
let element_a;
if(czy_side_bar_toc){
element_a=tocnumber.parentNode.parentNode;
}else{
element_a=tocnumber.parentNode;
}
if(element_a.tagName.toUpperCase()=="A"){
let href=StronicowyParser.kodowanie.DecodeHtml(element_a.getAttribute('href'));
if(href!==null){
href=href.replace(/^#/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
let id_headline=headline.getAttribute('id');
if(id_headline!==null){
id_headline=id_headline.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
if(href!=id_headline){czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
if(czy_jest===undefined){ile_jest+=1;}
if((czy_jest===undefined)||(!czy_jest)){
let element_toctext=StronicowyParser.style.UsunStyle(toctext_wartosc).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ");
if(stronasubst_tablica_rozdzialow[element_toctext]==null){
stronasubst_tablica_rozdzialow[element_toctext]=new Array(tocnumber);
}else{
stronasubst_tablica_rozdzialow[element_toctext].push(tocnumber);
}
}
}
}
}
}
}
}
StronicowyParser.LimitTOC(true,stronasubst_ukrywaj_toc);
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],true,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(StronicowyParser.CzyWlaczycSideBarTOC(undefined,true))){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
RozwazajNaglowki();
if(stronasubst_mathml){
$("div.toc ul > li > a > span.toctext").toggleClass("mathml");
$("div.toc_spis ul > li > a > span.toctext").toggleClass("mathml");
$("div.mw-table-of-contents-container > nav.sidebar-toc ul > li > a > div.sidebar-toc-text").toggleClass("mathml");
}
function Strona(strona){
let strona_re=StronicowyParser.wzor.BezZnakowSpecjalnych(strona);
let re=new RegExp("^\\s*"+strona_re+"\\s*#","g");
return re;
}
function CzyArtykulyZNaglowkamiDlaStrony(re){
for(let s in titles){
let czy_hash=titles[s].match(re);
if(czy_hash){
return true;
}
}
return false;
}
let catlinks_fun=new StronicowyParser.LinkiKategorii();
await catlinks_fun.PobierzKategorieStrony();
for ( let t in titles ) {
let strona=titles[t].match(/^[^#]*/g).toString();
let szablon_artykulu;
let re_strona=Strona(strona);
let czy_naglowki=CzyArtykulyZNaglowkamiDlaStrony(re_strona);
if(!czy_naglowki){
szablon_artykulu="{{:"+strona+"}}";
}else{
/*---------------------------------*/
let rozdzial1=null;
let re=/^([^#]*)#(.*)$/g;
if(re.test(titles[t])){
rozdzial1=titles[t].replace(re,"$2");
rozdzial1=rozdzial1.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial1="";}
let rozdzial2=null;
let tit=titles[parseInt(t)+1];
if( tit && re.test(tit) && re_strona.test(tit)){
rozdzial2=tit.replace(re,"$2");
rozdzial2=rozdzial2.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial2="";}
/*---------------------------*/
szablon_artykulu="{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|TekstRozdziałuStrony|"+strona+"|"+rozdzial1+"|"+rozdzial2+"}}}}";
}
szablon_artykulu="{{PrzytnijTekst|"+szablon_artykulu+"}}";
if(stronasubst_opakuj_kategorie_ze_sortowaniem){
szablon_artykulu="{{OpakujKategorieZeSortowaniem|"+szablon_artykulu+"}}"
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text|categories',
title: strona,
text: "<div class=\"hn hn_"+t+"\">\n"+szablon_artykulu+"\n</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
catlinks_fun.AnalizaKategorii(data).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);}
WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2).then((result) => {}).catch((error) => {});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function CzyszczenieZZdarzeńTableOfContent(){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
}
}
CzyszczenieZZdarzeńTableOfContent();
let tab_promise2=new StronicowyParser.SugerowaneObiekty();
async function CzyStronaSubst(element,aktualna_strona,tab_promise2){
if(tab_promise2){tab_promise2.push(true);}
await StronicowyParser.muteks.zablokuj();
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: aktualna_strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.expandtemplates.wikitext;
if((wikikod!==null)&&(aktualna_strona!==null)){
if(tab_promise2){tab_promise2.push(true);}
StronaSubst(element,wikikod,aktualna_strona,tab_promise2).then((result) => {}).catch((error) => {});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
let aktualna_strona=StronicowyParser.pageinfo.fullname;
if(tab_promise2){tab_promise2.push(true,true);}
CzyStronaSubst(document,aktualna_strona,tab_promise2);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
function Progress(){
var c=document.createElement('div');
c.setAttribute("id","pasek_postępu")
c.setAttribute('style','margin-top:-2px;margin-left:-2px;position:absolute;width:250px;height:70px;border:1px solid black;box-sizing:border-box;padding:5px;background-color:white;display:flex;flex-direction:column;');
var label=document.createElement('label');
label.setAttribute('for','file1');
label.innerHTML="<span style=\"color:blue;\">Ukończone wątki: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%');
var span=document.createElement('span');
span.innerHTML="0%";
var span_0=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file1')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;');
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_1=c.appendChild(progress);
var label=document.createElement('label');
label.setAttribute('for','file2');
label.innerHTML="<span style=\"color:blue;\">Zwolnione blokaty: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_1=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file2')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%')
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_2=c.appendChild(progress);
function PozycjaXY(){
c.style.top=(window.scrollY+document.documentElement.clientHeight-parseFloat(c.style.height))+"px";
c.style.left=(window.scrollX+document.documentElement.clientWidth-parseFloat(c.style.width))+"px";
}
document.querySelector('body').appendChild(c);
PozycjaXY();
$(window).on('scroll',PozycjaXY);
$(window).on('resize',PozycjaXY);
return new Array(element_body_progress_1,element_body_progress_2,span_0,span_1);
}
var arr;
function __FUNKCJA(arr){
arr[0].setAttribute("value","0");
arr[1].setAttribute("value","0");
let dodatnie_0=tab_promise2.lengthPlus;
let ujemne_0=tab_promise2.lengthMinus;
let dodatnie_1=StronicowyParser.muteks.LiczbaBlokatPlus;
let ujemne_1=StronicowyParser.muteks.LiczbaBlokatMinus;
let postep_0=((dodatnie_0>0)?((ujemne_0/dodatnie_0)*100):0);
let postep_1=((dodatnie_1>0)?((ujemne_1/dodatnie_1)*100):0);
arr[0].setAttribute("value",postep_0);
arr[1].setAttribute("value",postep_1);
arr[2].innerHTML=(parseInt(postep_0*1000)/1000)+"%";
arr[3].innerHTML=(parseInt(postep_1*1000)/1000)+"%";
}
StronicowyParser.CzekajNaZakaczenie(tab_promise2,null,StronicowyParser.muteks,(tab_promise)=>{arr=Progress();__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);setTimeout(function(){let node_postep=document.getElementById('pasek_postępu');$(node_postep).remove();},2000);}).then(async (result) => {}).catch(()=>{});
};
StronicowyParser.WyswietlStronyKsiazki().then((result) => {}).catch((error) => {});
});
7nfeo6zk59rs2ooazz22939ti9prtld
437320
437319
2022-08-09T17:12:23Z
Persino
2851
javascript
text/javascript
mw.loader.using('ext.gadget.gConfig', function(){
let globalne_zmienne=this;
StronicowyParser.WyswietlStronyKsiazki=async function(){
await StronicowyParser.muteks.zablokuj();
let stronasubst_latex=undefined;
let stronasubst_mathml=undefined;
let stronasubst_opakuj_kategorie_ze_sortowaniem=undefined;
let stronasubst_ukrywaj_toc=undefined;
let stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=undefined;
let stronasubst_aktualizowanie_nazw_artykulow=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=undefined;
let stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=undefined;
let stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=undefined;
let stronasubst_nie_usuwaj_styli=undefined;
let stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=undefined;
if((globalne_zmienne.gConfig!==undefined)&&(globalne_zmienne.gConfig.register!==undefined)&&(globalne_zmienne.gConfig.get!==undefined)){
mw.messages.set({
'StronaSubst-name': 'Strona zbiorcza',
'StronaSubst-description-page': 'Wikibooks:StronicowyParser/StronaSubst',
'StronaSubst-latex': 'Zamiast wzorów, wstaw tekst latexowy, w przeciwnym przypadku jest w formie LaTeX.',
'StronaSubst-mathml': 'Zamiast wzorów latexowych, wstaw je w formie znaczników MathML.',
'StronaSubst-opakuj_kategorie_ze_sortowaniem' : 'W stronach zbiorczych opakowuje kategorie, w postaci ramki, dla każdego artykułu z osobna.',
'StronaSubst-ukrywaj_toc' : "Ukrywa, począwszy od jakiegoś poziomu wszystkich tam spisów treści, na stronach zbiorczych.",
'StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach' : "Włącza dymki, nad linkami, w ładowanych dynamicznie stronach, tworząc je inteligentnymi.",
'StronaSubst-aktualizowanie_nazw_artykulow' : 'Aktualizuje na podstawie strony głównej nazwy tylko artykułów.',
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami' : "Aktualizuje sekcje poszczegónych rozdziałów artykułów ładowanych rozdziałami, domyślnie według sekcji w tych jednostkach.",
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika' : 'Aktualizuje, sekcje artykułów ładowanych rozdziałami, na podstawie strony głównej książki, a nie jego artykułów.',
'StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej' : 'Aktualizuje nagłówki strony głównej podręcznika na stronie zbiorczej.',
'StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule' : 'Aktualizuje, brakujące sekcje rozdziałów ładowanych rozdziałami artykułów, według wpisów na stronie głównej, na stronie zbiorczej.',
'StronaSubst-nie_usuwaj_styli' : 'Nie usuwa styli z nagłówków ładowanych stron.',
'StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst' : 'Rozwijaj szablony oznaczone szablonem SzablonSubst.',
});
gConfig.register('StronaSubst', {name: mw.msg('StronaSubst-name'), descriptionPage: mw.msg('StronaSubst-description-page')}, [
{
name: 'latex',
desc: mw.msg('StronaSubst-latex'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_latex']
},
{
name: 'mathml',
desc: mw.msg('StronaSubst-mathml'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_mathml']
},
{
name: 'opakuj_kategorie_ze_sortowaniem',
desc: mw.msg('StronaSubst-opakuj_kategorie_ze_sortowaniem'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_opakuj_kategorie_ze_sortowaniem']
},
{
name: 'ukrywaj_toc',
desc: mw.msg('StronaSubst-ukrywaj_toc'),
type: 'integer',
deflt: 0,
validation: function(n){ if((n<0)||(n==1)){ throw 'Wartość dotycząca poziomu ukrywania spisów treści jest nieprawidłowa!' }; return n; },
legacy: [window, 'wb_stronasubst_ukrywaj_toc']
},
{
name: 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach',
desc: mw.msg('StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach']
},
{
name: 'aktualizowanie_nazw_artykulow',
desc: mw.msg('StronaSubst-aktualizowanie_nazw_artykulow'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nazw_artykulow']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika']
},
{
name: 'aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej',
desc: mw.msg('StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej']
},
{
name: 'aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule',
desc: mw.msg('StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule']
},
{
name: 'nie_usuwaj_styli',
desc: mw.msg('StronaSubst-nie_usuwaj_styli'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_nie_usuwaj_styli']
},
{
name: 'rozwijaj_szablony_oznaczone_szablonem_szablonsubst',
desc: mw.msg('StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst']
},
]);
stronasubst_latex = (gConfig.get('StronaSubst', 'latex')==true);
stronasubst_mathml = (((gConfig.get('StronaSubst', 'mathml'))&&(!stronasubst_latex))==true);
stronasubst_opakuj_kategorie_ze_sortowaniem = (gConfig.get('StronaSubst', 'opakuj_kategorie_ze_sortowaniem')==true);
stronasubst_ukrywaj_toc = gConfig.get('StronaSubst', 'ukrywaj_toc');
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach = gConfig.get('StronaSubst', 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach');
stronasubst_aktualizowanie_nazw_artykulow = (gConfig.get('StronaSubst', 'aktualizowanie_nazw_artykulow')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami = (gConfig.get('StronaSubst', 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika = (gConfig.get('StronaSubst','aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika')==true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej = (gConfig.get('StronaSubst','aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej')==true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule = (gConfig.get('StronaSubst','aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule')==true);
stronasubst_nie_usuwaj_styli = (gConfig.get('StronaSubst','nie_usuwaj_styli')==true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst = (gConfig.get('StronaSubst','rozwijaj_szablony_oznaczone_szablonem_szablonsubst')==true);
}
//let podglad=document.querySelector('body:not(.action-view)');
//if(podglad){return;}
let stronasubst_tablica_tych_samych=new Array();
let stronasubst_tablica_rozdzialow=new Array();
let stronasubst_tablica_alternatywnych_nazw=new Array();
stronasubst_latex=((stronasubst_latex!==undefined)?stronasubst_latex:false);
stronasubst_mathml=((stronasubst_mathml!==undefined)?stronasubst_mathml:true);
stronasubst_opakuj_kategorie_ze_sortowaniem=((stronasubst_opakuj_kategorie_ze_sortowaniem!==undefined)?stronasubst_opakuj_kategorie_ze_sortowaniem:false);
stronasubst_ukrywaj_toc=parseInt(((stronasubst_ukrywaj_toc!==undefined)?stronasubst_ukrywaj_toc:0));
stronasubst_ukrywaj_toc=((!isNaN(stronasubst_ukrywaj_toc))?stronasubst_ukrywaj_toc:0);
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=((stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach!==undefined)?stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach:true);
stronasubst_aktualizowanie_nazw_artykulow=((stronasubst_aktualizowanie_nazw_artykulow!==undefined)?stronasubst_aktualizowanie_nazw_artykulow:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika:true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=((stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej!==undefined)?stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej:true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=((stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule!==undefined)?stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule:true);
stronasubst_nie_usuwaj_styli=((stronasubst_nie_usuwaj_styli!==undefined)?stronasubst_nie_usuwaj_styli:true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=((stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst!==undefined)?stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst:true);
async function AnalizujDalejSzablonSubst(element_strony,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let rozdzial_ksiazki="rozdział_książki";
let el=$(element_strony).find('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((el!==null)&&(el.length>0)){
for(let i=0;i<el.length;++i){
let element_el=el[i];
let ksiazka=element_el.querySelector("."+rozdzial_ksiazki);
if(ksiazka){
let nazwa_strony=element_el.getAttribute('nazwa_strony');
if(tab_promise2){tab_promise2.push(true);}
CzyStronaSubst(element_el,nazwa_strony,tab_promise2);
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
async function WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let title=data.parse.title;
let wikikod=data.parse.text['*'];
let strona_hash;
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let t=tab_uzyskane[0];
if(t==undefined){
console.log("Nie wykryto znacznika lsth_\d+.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
strona_hash=titles[t];
let selflink=document.createElement('div');
selflink.innerHTML=wikikod;
let czy_selflink=selflink.getElementsByClassName('selflink');
if((czy_selflink!==null)&&(czy_selflink.length==1)){
let elements=tabstrona[strona_hash];
let a=document.createElement('a');/*Tworzenie linku*/
a.setAttribute('href',StronicowyParser.kodowanie.EncodeHtml(title));
a.innerHTML=strona_hash;
let span=document.createElement('span');
span.appendChild(a);
span.setAttribute("class","niw link");/*Dodawanie klasy, by inny skript JS to przeanalizował jako link*/
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo(span);
}
for(let q in elements){
let element=elements[q];
element.innerHTML="";
element.appendChild(span);
$(element).wrap(function(){return "<strong></strong>";});
let przed=document.createTextNode("{{:");
let po=document.createTextNode("}}");
element.insertBefore(przed,element.firstChild);
element.appendChild(po);
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=tab_uzyskane[1].innerHTML;
let elements=tabstrona[strona_hash];
for(let q in elements){
let element=elements[q];
element.innerHTML=wikikod;
StronicowyParser.ZamienLinkiNaLinkiDoStronyAktualnej(element,title,titles);
}
StronicowyParser.AktualizujSpisTresciModuluStrony(elements,tabs,strona_hash,stronasubst_tablica_alternatywnych_nazw,stronasubst_tablica_tych_samych,stronasubst_tablica_rozdzialow,true,stronasubst_latex,stronasubst_mathml)
let strona_start=$(elements[0]).parents(".strona_start");
let rodzic=undefined;
if((strona_start!==null)&&(strona_start.length>0)){
rodzic=strona_start[0];
}
StronicowyParser.IndeksujHeadLine(rodzic);
StronicowyParser.PrzeIndeksujWszystkieTOC(rodzic,true);
for(let q in elements){
let element=elements[q];
async function ElementDalszychObliczen(element,tab_promise2){
await StronicowyParser.muteks.zablokuj(true);
StronicowyParser.PoprawRozdzialyStron(element);
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu(element,tab_promise2);//Funkcja jako gadżet do numerowania rozdziałów.
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element,tab_promise2);
}
if((StronicowyParser.szablony&&StronicowyParser.szablony.LadujSzablon)&&(stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst)){
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(element,title,titles,undefined,tab_promise).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(()=>{
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika(element);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
ElementDalszychObliczen(element,tab_promise2);
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function ToogleTableOfContainer(panel){
let id=panel.target;
let tagname=id.tagName.toUpperCase();
//console.log(czy_klasa,tagname,"TYTAN)";
if(tagname=="BUTTON"){
let czy_klasa_1=$(id).hasClass('sidebar-toc-toggle');
let czy_klasa_2=$(id).hasClass('vector-toc-collapse-button');
if(czy_klasa_1){
$(id).parent().children().last().each((i,element)=>{
let expanded=$(id).attr('aria-expanded');
if(expanded=="false"){
$(element).css('display',"block");
$(element).closest('li').addClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','true');
}else if(expanded=="true"){
$(element).css('display',"none");
$(element).closest('li').removeClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','false');
}
});
}else if(czy_klasa_2){
$(id).parents('#sidebar-toc-label').siblings('ul').each((i,element)=>{
let ukryj=$(element).css('display');
if(ukryj!="none"){
$(element).css('display',"none");
id.innerHTML=" pokaż ";
}else{
$(element).css('display',"block");
id.innerHTML=" ukryj "
}
});
}
}
}
let mutekstoogle=new StronicowyParser.Muteks();
async function ScrollTableOfContainer(){
await mutekstoogle.zablokuj();
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header').first().each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=rect_sticky.height-15;
});
let parser=document.querySelector('#mw-content-text .mw-parser-output');
if(parser){
let rect=parser.getBoundingClientRect();
if(rect.top>=height_sticky){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item').first().addClass('sidebar-toc-list-item-active');
mutekstoogle.odblokuj();
return;
}
}else{
mutekstoogle.odblokuj();
return;
}
var str=$('#mw-content-text .mw-parser-output').find('h1, h2, h3, h4, h5, h6');
if((str!==null)&&(str.length>0)){
var naglowek;
for(i=0;i<str.length;++i){
let element=str[i];
let rect=element.getBoundingClientRect();
if(rect.top>=height_sticky){
let mw_naglowek=element.querySelector('.mw-headline');
if(mw_naglowek){
let id_naglowek=mw_naglowek.getAttribute('id');
let tak=false;
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+id_naglowek){
let display=window.getComputedStyle(element, null).getPropertyValue('display');
if(display!="none"){
tak=true;
}
}
});
if(tak){
naglowek=id_naglowek;
break;
}
}
}
}
if(naglowek){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+naglowek){
$(element).addClass('sidebar-toc-list-item-active');
}
});
}
}
mutekstoogle.odblokuj();
}
async function StronaSubst(element_strony,wikikod,aktualna_strona,tab_promise2){
await StronicowyParser.muteks.zablokuj();
StronicowyParser.NaprawNaglowkiStrony(element_strony,true);
let czy_wikikod=wikikod.match(/^[_\s]*$/g);
let strona_start=$('#mw-content-text .mw-parser-output .strona_start');
function CzyWszystkieNaglowkiWewnatrzStronaStart(){
let pole=$('#mw-content-text .mw-parser-output').find('h1,h2,h3,h4,h5,h6');
for(let i=0;i<pole.length;++i){
let s=strona_start.find(pole[i]);
if((s===null)||(s.length==0)){
return false;
}
}
return true;
}
if(czy_wikikod){
StronicowyParser.muteks.odblokuj();
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyArtykulu)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyArtykulu(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
let czy_numerowac=StronicowyParser.CzyWlaczycSideBarTOC(undefined,true);
if(czy_numerowac){
czy_numerowac=false;
tab_promise.push(true);
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: StronicowyParser.pageinfo.fullname,
text: '{{#invoke:StronicowyParser|CzyStronęNumerować|'+StronicowyParser.pageinfo.fullname+'}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
let wikikod=data.expandtemplates.wikitext;
let czy_wikikod=/^[_\s]*$/g.test(wikikod);
if(!czy_wikikod){
czy_numerowac=true;
}
tab_promise.pop();
}).catch(()=>{tab_promise.pop();});
}
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
let tab_promise=new Array(true);
StronicowyParser.LimitTOC(czy_numerowac,stronasubst_ukrywaj_toc);
StronicowyParser.szablony.LadujSzablon(null,null,null,czy_numerowac,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true)
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],czy_numerowac,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(czy_numerowac)){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
return;
}
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(null,null,null,undefined,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async (result) => {
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
await StronicowyParser.CzekajNaZakaczenie(tab_promise).then(async (result) => {}).catch(()=>{});
await StronicowyParser.muteks.zablokuj();
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
let rozdzial_ksiazki="rozdział_książki";
let tagclass=element_strony.getElementsByClassName(rozdzial_ksiazki);
if(tagclass===null){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return null;
}
let liczba_elementow=tagclass.length;
if(liczba_elementow==0){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return null;
}
let titles=new Array();
let tabstrona=new Array();
let tabs=new Array();
let tab_section=new Array();
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element_strony,tab_promise2);
}
let tab_hn=new Array();
async function edit_action(numer,strona,hn,link_strona,czy_link_nie_w_naglowku){
await StronicowyParser.muteks.zablokuj();
let linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection===null){
let editsection=document.createElement('span');
editsection.classList.add('mw-editsection');
let bracket_poczatek=document.createElement('span');
bracket_poczatek.classList.add('mw-editsection-bracket')
bracket_poczatek.innerHTML="[";
let a=document.createElement('a');
a.setAttribute('href',"/w/index.php?title="+StronicowyParser.kodowanie.EncodeHtml(strona,false,true)+"&action=edit"+((numer>0)?("§ion="+numer):""));
a.setAttribute('title',"Edytuj artykuł: "+link_strona);
a.innerHTML="edytuj";
let bracket_koniec=document.createElement('span');
bracket_koniec.classList.add('mw-editsection-bracket')
bracket_koniec.innerHTML="]";
editsection.appendChild(bracket_poczatek);
editsection.appendChild(a)
editsection.appendChild(bracket_koniec);
hn.appendChild(editsection);
}
linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection!==null){
let mw_editsection_bracket=linkstrony_editsection.querySelector('a');
if(mw_editsection_bracket!==null){
if(czy_link_nie_w_naglowku){
let a=document.createElement('a');
a.innerHTML="artykuł";
a.setAttribute("href",StronicowyParser.kodowanie.EncodeHtml("/wiki/"+StronicowyParser.kodowanie.EncodeHtml(link_strona,false,true)));
a.setAttribute("title","Zobacz artykuł: "+link_strona);
let span=document.createElement('span');
span.innerHTML="| ";
span.setAttribute('class',"mw-editsection-bracket")
let czy_ma=$(mw_editsection_bracket).parent().hasClass('link');
if(czy_ma){
let rodzic_mw_editsection_bracket=mw_editsection_bracket.parentNode;
let span2=linkstrony_editsection.insertBefore(span, rodzic_mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}else{
let span2=linkstrony_editsection.insertBefore(span, mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}
}
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(linkstrony_editsection).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
}
for (let i=0;i<liczba_elementow;++i){
let tagclassname=tagclass[i];
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find("."+rozdzial_ksiazki);
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==tagclassname){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
if(tagclassname.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let class_element=tagclassname.getElementsByClassName('strona_subst');
let element;
if((class_element!==null)&&(class_element.length==1)){
element=class_element[0];
if(element.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let czy_link_nie_w_naglowku;
let strona_headline=tagclassname.getElementsByClassName('mw-headline');
let link_strona;
if((strona_headline!==null)&&(strona_headline.length==1)){
strona_a=strona_headline[0].getElementsByTagName('a');
if((strona_a!==null)&&(strona_a.length==1)){
link_strona=StronicowyParser.kodowanie.DecodeHtml(strona_a[0].getAttribute('href'));
if(link_strona!==null){
let re=/\/wiki\//g;
if(re.test(link_strona)){
link_strona=link_strona.substring(6,link_strona.length);
czy_link_nie_w_naglowku=false;
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}
}else{
link_strona=StronicowyParser.style.UsunStyle(element.innerHTML);
czy_link_nie_w_naglowku=true;
}
}
let re = /^[_\s]*$/g;
let dopasowanie = re.test(link_strona);
if(dopasowanie){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return;
};
link_strona=link_strona.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ").replace(/&/g,"&").replace(/ /g," ");
let hash=link_strona.replace(/^([^#]*)#(.*)$/,"$2").replace(/&/g,"&").replace(/ /g,"_");
/**/
let hn=strona_headline[0].parentNode;
if((hn===null)||(!hn.tagName.toUpperCase().match(/^H\d+$/g))){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
tab_section[i]=new Array(hn,link_strona,czy_link_nie_w_naglowku);
let strona=link_strona.match(/^[^#]*/g).toString();
async function PraceIteracyjne(tab_promise2){
await StronicowyParser.muteks.zablokuj();
if(/#/g.test(link_strona)){
let hash=link_strona.replace(/^([^#]*)#(.*)$/g,"$2");
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let numer=hn.innerHTML;
numer=parseInt(numer);
if(isNaN(numer)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return ;}
let tab_c=tab_section[c];
edit_action(numer,tab_c[1].match(/^[^#]*/g).toString(),tab_c[0],tab_c[1],tab_c[2]);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami){
if(!stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}else{
let uzupelniaj_sekcje_artykulow;
if(stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule){
uzupelniaj_sekcje_artykulow="tak";
}else{
uzupelniaj_sekcje_artykulow="";
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+link_strona+"|analiza=tak|uzupełniaj sekcje artykułów="+uzupelniaj_sekcje_artykulow+"|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
let a=headline.getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
a[0].setAttribute('title',stare);
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
}else{
edit_action(0,strona,hn,link_strona,czy_link_nie_w_naglowku);
if(stronasubst_aktualizowanie_nazw_artykulow){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+strona+"|analiza=tak|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceIteracyjne(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
/**/
tabs[i]=link_strona;
let czy=false;
for(let d in titles){
if(titles[d]==link_strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=link_strona;
}
if(tabstrona[link_strona]==null){
tabstrona[link_strona]=new Array();
}
let tab=tabstrona[link_strona];
let tablen=tab.length;
tabstrona[link_strona][tablen]=element;
}
async function PraceNaglowki(tab_promise2){
await StronicowyParser.muteks.zablokuj();
let promise;
if(element_strony==document){
let namespace=StronicowyParser.pageinfo.namespace;
let strona_podrecznika=((namespace!="")?(namespace+":"):"")+StronicowyParser.pageinfo.bookname;
promise=Promise.resolve(strona_podrecznika);
}else{
let zaan=$(element_strony).parents('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((zaan!==null)&&(zaan.length>0)){
let strona=zaan[0].getAttribute('nazwa_strony');
if(strona){
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](strona);
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}
if(tab_promise2){tab_promise2.push(true);}
promise.then(async (strona_podrecznika)=>{
await StronicowyParser.muteks.zablokuj();
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find(".klasa_nagłówka");
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)){
let g=0;
let tab_naglowka=new Array();
let tab_hn=new Array();
for(let z=0;z<klasa_naglowka.length;++z){
let pojedyncza_klasa_naglowka=klasa_naglowka[z];
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==pojedyncza_klasa_naglowka){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
let dana_klasa_naglowka=pojedyncza_klasa_naglowka.querySelector('.mw-headline');
if(dana_klasa_naglowka!==null){
if((dana_klasa_naglowka.parentNode!==null)&&(dana_klasa_naglowka.parentNode.tagName.toUpperCase().match(/^[Hh]\d+$/g))
&&(dana_klasa_naglowka.parentNode.parentNode!=null)&&(dana_klasa_naglowka.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&($(dana_klasa_naglowka.parentNode.parentNode).hasClass('klasa_nagłówka'))){
let naglowek=StronicowyParser.style.UsunStyle(dana_klasa_naglowka.innerHTML).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_").replace(/&/g,"&").replace(/ /g,"_");
let ww=1;
for(let x=0;x<tab_naglowka.length;++x){
if(tab_naglowka[x]==naglowek){
++ww;
}
}
naglowek=naglowek+((ww>1)?ww:"");
tab_naglowka[g]=naglowek;
tab_hn[g]=dana_klasa_naglowka.parentNode;
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, na stronie głównej podręcznika, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let nazwa_podrecznika=strona_podrecznika.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
let naglowek_sekcji_podrecznika=tab_naglowka[c].replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
edit_action(c+1,nazwa_podrecznika,tab_hn[c],nazwa_podrecznika+"#"+naglowek_sekcji_podrecznika,true);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();return;}
let headline=tab_hn[c].querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
++g;
}
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceNaglowki(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
function RozwazajNaglowki(){
let toc_fun=new StronicowyParser.ListaNodeTOC();
if((toc_fun.toc!==null)&&(toc_fun.toc.length>0)){
for(let w=0;w<toc_fun.toc.length;++w){
let czy_side_bar_toc=toc_fun.CzySideBarToc(toc_fun.toc[w]);
let ile_jest=0;
let li=toc_fun.toc[w].getElementsByTagName('li');
if((li!==null)&&(li.length>0)){
for(let dd=0;dd<li.length;++dd){
let element_li=li[dd];
let tocnumber;let toctext_wartosc;
if(czy_side_bar_toc){
tocnumber=element_li.querySelector('.sidebar-toc-numb');
if(!tocnumber){continue;}
toctext_wartosc=element_li.querySelector('.sidebar-toc-text').innerHTML.replace(new RegExp(StronicowyParser.wzor.BezZnakowSpecjalnych(tocnumber.outerHTML),"g"),"");
}else{
tocnumber=element_li.querySelector('.tocnumber');
toctext_wartosc=element_li.querySelector('.toctext').innerHTML;
}
if((tocnumber!==null)&&(toctext_wartosc!==null)){
let czy_jest=undefined;
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)&&(klasa_naglowka[ile_jest]!=null)){
let element_klasa_naglowka=klasa_naglowka[ile_jest];
let headline=element_klasa_naglowka.querySelector('.mw-headline');
if((headline!==null)
&&(headline.parentNode!==null)
&&(headline.parentNode.tagName.toUpperCase().match(/^H\d+$/))
&&(headline.parentNode.parentNode!==null)
&&(headline.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&(headline.parentNode.parentNode===element_klasa_naglowka)
){
let element_a;
if(czy_side_bar_toc){
element_a=tocnumber.parentNode.parentNode;
}else{
element_a=tocnumber.parentNode;
}
if(element_a.tagName.toUpperCase()=="A"){
let href=StronicowyParser.kodowanie.DecodeHtml(element_a.getAttribute('href'));
if(href!==null){
href=href.replace(/^#/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
let id_headline=headline.getAttribute('id');
if(id_headline!==null){
id_headline=id_headline.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
if(href!=id_headline){czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
if(czy_jest===undefined){ile_jest+=1;}
if((czy_jest===undefined)||(!czy_jest)){
let element_toctext=StronicowyParser.style.UsunStyle(toctext_wartosc).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ");
if(stronasubst_tablica_rozdzialow[element_toctext]==null){
stronasubst_tablica_rozdzialow[element_toctext]=new Array(tocnumber);
}else{
stronasubst_tablica_rozdzialow[element_toctext].push(tocnumber);
}
}
}
}
}
}
}
}
StronicowyParser.LimitTOC(true,stronasubst_ukrywaj_toc);
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],true,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(StronicowyParser.CzyWlaczycSideBarTOC(undefined,true))){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
RozwazajNaglowki();
if(stronasubst_mathml){
$("div.toc ul > li > a > span.toctext").toggleClass("mathml");
$("div.toc_spis ul > li > a > span.toctext").toggleClass("mathml");
$("div.mw-table-of-contents-container > nav.sidebar-toc ul > li > a > div.sidebar-toc-text").toggleClass("mathml");
}
function Strona(strona){
let strona_re=StronicowyParser.wzor.BezZnakowSpecjalnych(strona);
let re=new RegExp("^\\s*"+strona_re+"\\s*#","g");
return re;
}
function CzyArtykulyZNaglowkamiDlaStrony(re){
for(let s in titles){
let czy_hash=titles[s].match(re);
if(czy_hash){
return true;
}
}
return false;
}
let catlinks_fun=new StronicowyParser.LinkiKategorii();
await catlinks_fun.PobierzKategorieStrony();
for ( let t in titles ) {
let strona=titles[t].match(/^[^#]*/g).toString();
let szablon_artykulu;
let re_strona=Strona(strona);
let czy_naglowki=CzyArtykulyZNaglowkamiDlaStrony(re_strona);
if(!czy_naglowki){
szablon_artykulu="{{:"+strona+"}}";
}else{
/*---------------------------------*/
let rozdzial1=null;
let re=/^([^#]*)#(.*)$/g;
if(re.test(titles[t])){
rozdzial1=titles[t].replace(re,"$2");
rozdzial1=rozdzial1.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial1="";}
let rozdzial2=null;
let tit=titles[parseInt(t)+1];
if( tit && re.test(tit) && re_strona.test(tit)){
rozdzial2=tit.replace(re,"$2");
rozdzial2=rozdzial2.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial2="";}
/*---------------------------*/
szablon_artykulu="{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|TekstRozdziałuStrony|"+strona+"|"+rozdzial1+"|"+rozdzial2+"}}}}";
}
szablon_artykulu="{{PrzytnijTekst|"+szablon_artykulu+"}}";
if(stronasubst_opakuj_kategorie_ze_sortowaniem){
szablon_artykulu="{{OpakujKategorieZeSortowaniem|"+szablon_artykulu+"}}"
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text|categories',
title: strona,
text: "<div class=\"hn hn_"+t+"\">\n"+szablon_artykulu+"\n</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
catlinks_fun.AnalizaKategorii(data).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);}
WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2).then((result) => {}).catch((error) => {});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function CzyszczenieZZdarzeńTableOfContent(){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
}
}
CzyszczenieZZdarzeńTableOfContent();
let tab_promise2=new StronicowyParser.SugerowaneObiekty();
async function CzyStronaSubst(element,aktualna_strona,tab_promise2){
if(tab_promise2){tab_promise2.push(true);}
await StronicowyParser.muteks.zablokuj();
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: aktualna_strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.expandtemplates.wikitext;
if((wikikod!==null)&&(aktualna_strona!==null)){
if(tab_promise2){tab_promise2.push(true);}
StronaSubst(element,wikikod,aktualna_strona,tab_promise2).then((result) => {}).catch((error) => {});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
let aktualna_strona=StronicowyParser.pageinfo.fullname;
if(tab_promise2){tab_promise2.push(true,true);}
CzyStronaSubst(document,aktualna_strona,tab_promise2);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
function Progress(){
var c=document.createElement('div');
c.setAttribute("id","pasek_postępu")
c.setAttribute('style','margin-top:-2px;margin-left:-2px;position:absolute;width:250px;height:80px;border:1px solid black;box-sizing:border-box;padding:0;background-color:white;display:flex;flex-direction:column;');
var label=document.createElement('label');
label.setAttribute('for','file1');
label.innerHTML="<span style=\"color:blue;\">Ukończone wątki: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%');
var span=document.createElement('span');
span.innerHTML="0%";
var span_0=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file1')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;');
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_1=c.appendChild(progress);
var label=document.createElement('label');
label.setAttribute('for','file2');
label.innerHTML="<span style=\"color:blue;\">Zwolnione blokaty: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_1=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file2')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%')
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_2=c.appendChild(progress);
function PozycjaXY(){
c.style.top=(window.scrollY+document.documentElement.clientHeight-parseFloat(c.style.height))+"px";
c.style.left=(window.scrollX+document.documentElement.clientWidth-parseFloat(c.style.width))+"px";
}
document.querySelector('body').appendChild(c);
PozycjaXY();
$(window).on('scroll',PozycjaXY);
$(window).on('resize',PozycjaXY);
return new Array(element_body_progress_1,element_body_progress_2,span_0,span_1);
}
var arr;
function __FUNKCJA(arr){
arr[0].setAttribute("value","0");
arr[1].setAttribute("value","0");
let dodatnie_0=tab_promise2.lengthPlus;
let ujemne_0=tab_promise2.lengthMinus;
let dodatnie_1=StronicowyParser.muteks.LiczbaBlokatPlus;
let ujemne_1=StronicowyParser.muteks.LiczbaBlokatMinus;
let postep_0=((dodatnie_0>0)?((ujemne_0/dodatnie_0)*100):0);
let postep_1=((dodatnie_1>0)?((ujemne_1/dodatnie_1)*100):0);
arr[0].setAttribute("value",postep_0);
arr[1].setAttribute("value",postep_1);
arr[2].innerHTML=(parseInt(postep_0*1000)/1000)+"%";
arr[3].innerHTML=(parseInt(postep_1*1000)/1000)+"%";
}
StronicowyParser.CzekajNaZakaczenie(tab_promise2,null,StronicowyParser.muteks,(tab_promise)=>{arr=Progress();__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);setTimeout(function(){let node_postep=document.getElementById('pasek_postępu');$(node_postep).remove();},2000);}).then(async (result) => {}).catch(()=>{});
};
StronicowyParser.WyswietlStronyKsiazki().then((result) => {}).catch((error) => {});
});
la6d302a5tvw8ns4ttqhjodl5jc8q43
437321
437320
2022-08-09T17:14:14Z
Persino
2851
javascript
text/javascript
mw.loader.using('ext.gadget.gConfig', function(){
let globalne_zmienne=this;
StronicowyParser.WyswietlStronyKsiazki=async function(){
await StronicowyParser.muteks.zablokuj();
let stronasubst_latex=undefined;
let stronasubst_mathml=undefined;
let stronasubst_opakuj_kategorie_ze_sortowaniem=undefined;
let stronasubst_ukrywaj_toc=undefined;
let stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=undefined;
let stronasubst_aktualizowanie_nazw_artykulow=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=undefined;
let stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=undefined;
let stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=undefined;
let stronasubst_nie_usuwaj_styli=undefined;
let stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=undefined;
if((globalne_zmienne.gConfig!==undefined)&&(globalne_zmienne.gConfig.register!==undefined)&&(globalne_zmienne.gConfig.get!==undefined)){
mw.messages.set({
'StronaSubst-name': 'Strona zbiorcza',
'StronaSubst-description-page': 'Wikibooks:StronicowyParser/StronaSubst',
'StronaSubst-latex': 'Zamiast wzorów, wstaw tekst latexowy, w przeciwnym przypadku jest w formie LaTeX.',
'StronaSubst-mathml': 'Zamiast wzorów latexowych, wstaw je w formie znaczników MathML.',
'StronaSubst-opakuj_kategorie_ze_sortowaniem' : 'W stronach zbiorczych opakowuje kategorie, w postaci ramki, dla każdego artykułu z osobna.',
'StronaSubst-ukrywaj_toc' : "Ukrywa, począwszy od jakiegoś poziomu wszystkich tam spisów treści, na stronach zbiorczych.",
'StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach' : "Włącza dymki, nad linkami, w ładowanych dynamicznie stronach, tworząc je inteligentnymi.",
'StronaSubst-aktualizowanie_nazw_artykulow' : 'Aktualizuje na podstawie strony głównej nazwy tylko artykułów.',
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami' : "Aktualizuje sekcje poszczegónych rozdziałów artykułów ładowanych rozdziałami, domyślnie według sekcji w tych jednostkach.",
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika' : 'Aktualizuje, sekcje artykułów ładowanych rozdziałami, na podstawie strony głównej książki, a nie jego artykułów.',
'StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej' : 'Aktualizuje nagłówki strony głównej podręcznika na stronie zbiorczej.',
'StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule' : 'Aktualizuje, brakujące sekcje rozdziałów ładowanych rozdziałami artykułów, według wpisów na stronie głównej, na stronie zbiorczej.',
'StronaSubst-nie_usuwaj_styli' : 'Nie usuwa styli z nagłówków ładowanych stron.',
'StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst' : 'Rozwijaj szablony oznaczone szablonem SzablonSubst.',
});
gConfig.register('StronaSubst', {name: mw.msg('StronaSubst-name'), descriptionPage: mw.msg('StronaSubst-description-page')}, [
{
name: 'latex',
desc: mw.msg('StronaSubst-latex'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_latex']
},
{
name: 'mathml',
desc: mw.msg('StronaSubst-mathml'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_mathml']
},
{
name: 'opakuj_kategorie_ze_sortowaniem',
desc: mw.msg('StronaSubst-opakuj_kategorie_ze_sortowaniem'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_opakuj_kategorie_ze_sortowaniem']
},
{
name: 'ukrywaj_toc',
desc: mw.msg('StronaSubst-ukrywaj_toc'),
type: 'integer',
deflt: 0,
validation: function(n){ if((n<0)||(n==1)){ throw 'Wartość dotycząca poziomu ukrywania spisów treści jest nieprawidłowa!' }; return n; },
legacy: [window, 'wb_stronasubst_ukrywaj_toc']
},
{
name: 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach',
desc: mw.msg('StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach']
},
{
name: 'aktualizowanie_nazw_artykulow',
desc: mw.msg('StronaSubst-aktualizowanie_nazw_artykulow'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nazw_artykulow']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika']
},
{
name: 'aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej',
desc: mw.msg('StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej']
},
{
name: 'aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule',
desc: mw.msg('StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule']
},
{
name: 'nie_usuwaj_styli',
desc: mw.msg('StronaSubst-nie_usuwaj_styli'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_nie_usuwaj_styli']
},
{
name: 'rozwijaj_szablony_oznaczone_szablonem_szablonsubst',
desc: mw.msg('StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst']
},
]);
stronasubst_latex = (gConfig.get('StronaSubst', 'latex')==true);
stronasubst_mathml = (((gConfig.get('StronaSubst', 'mathml'))&&(!stronasubst_latex))==true);
stronasubst_opakuj_kategorie_ze_sortowaniem = (gConfig.get('StronaSubst', 'opakuj_kategorie_ze_sortowaniem')==true);
stronasubst_ukrywaj_toc = gConfig.get('StronaSubst', 'ukrywaj_toc');
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach = gConfig.get('StronaSubst', 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach');
stronasubst_aktualizowanie_nazw_artykulow = (gConfig.get('StronaSubst', 'aktualizowanie_nazw_artykulow')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami = (gConfig.get('StronaSubst', 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika = (gConfig.get('StronaSubst','aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika')==true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej = (gConfig.get('StronaSubst','aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej')==true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule = (gConfig.get('StronaSubst','aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule')==true);
stronasubst_nie_usuwaj_styli = (gConfig.get('StronaSubst','nie_usuwaj_styli')==true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst = (gConfig.get('StronaSubst','rozwijaj_szablony_oznaczone_szablonem_szablonsubst')==true);
}
//let podglad=document.querySelector('body:not(.action-view)');
//if(podglad){return;}
let stronasubst_tablica_tych_samych=new Array();
let stronasubst_tablica_rozdzialow=new Array();
let stronasubst_tablica_alternatywnych_nazw=new Array();
stronasubst_latex=((stronasubst_latex!==undefined)?stronasubst_latex:false);
stronasubst_mathml=((stronasubst_mathml!==undefined)?stronasubst_mathml:true);
stronasubst_opakuj_kategorie_ze_sortowaniem=((stronasubst_opakuj_kategorie_ze_sortowaniem!==undefined)?stronasubst_opakuj_kategorie_ze_sortowaniem:false);
stronasubst_ukrywaj_toc=parseInt(((stronasubst_ukrywaj_toc!==undefined)?stronasubst_ukrywaj_toc:0));
stronasubst_ukrywaj_toc=((!isNaN(stronasubst_ukrywaj_toc))?stronasubst_ukrywaj_toc:0);
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=((stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach!==undefined)?stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach:true);
stronasubst_aktualizowanie_nazw_artykulow=((stronasubst_aktualizowanie_nazw_artykulow!==undefined)?stronasubst_aktualizowanie_nazw_artykulow:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika:true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=((stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej!==undefined)?stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej:true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=((stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule!==undefined)?stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule:true);
stronasubst_nie_usuwaj_styli=((stronasubst_nie_usuwaj_styli!==undefined)?stronasubst_nie_usuwaj_styli:true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=((stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst!==undefined)?stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst:true);
async function AnalizujDalejSzablonSubst(element_strony,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let rozdzial_ksiazki="rozdział_książki";
let el=$(element_strony).find('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((el!==null)&&(el.length>0)){
for(let i=0;i<el.length;++i){
let element_el=el[i];
let ksiazka=element_el.querySelector("."+rozdzial_ksiazki);
if(ksiazka){
let nazwa_strony=element_el.getAttribute('nazwa_strony');
if(tab_promise2){tab_promise2.push(true);}
CzyStronaSubst(element_el,nazwa_strony,tab_promise2);
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
async function WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let title=data.parse.title;
let wikikod=data.parse.text['*'];
let strona_hash;
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let t=tab_uzyskane[0];
if(t==undefined){
console.log("Nie wykryto znacznika lsth_\d+.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
strona_hash=titles[t];
let selflink=document.createElement('div');
selflink.innerHTML=wikikod;
let czy_selflink=selflink.getElementsByClassName('selflink');
if((czy_selflink!==null)&&(czy_selflink.length==1)){
let elements=tabstrona[strona_hash];
let a=document.createElement('a');/*Tworzenie linku*/
a.setAttribute('href',StronicowyParser.kodowanie.EncodeHtml(title));
a.innerHTML=strona_hash;
let span=document.createElement('span');
span.appendChild(a);
span.setAttribute("class","niw link");/*Dodawanie klasy, by inny skript JS to przeanalizował jako link*/
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo(span);
}
for(let q in elements){
let element=elements[q];
element.innerHTML="";
element.appendChild(span);
$(element).wrap(function(){return "<strong></strong>";});
let przed=document.createTextNode("{{:");
let po=document.createTextNode("}}");
element.insertBefore(przed,element.firstChild);
element.appendChild(po);
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=tab_uzyskane[1].innerHTML;
let elements=tabstrona[strona_hash];
for(let q in elements){
let element=elements[q];
element.innerHTML=wikikod;
StronicowyParser.ZamienLinkiNaLinkiDoStronyAktualnej(element,title,titles);
}
StronicowyParser.AktualizujSpisTresciModuluStrony(elements,tabs,strona_hash,stronasubst_tablica_alternatywnych_nazw,stronasubst_tablica_tych_samych,stronasubst_tablica_rozdzialow,true,stronasubst_latex,stronasubst_mathml)
let strona_start=$(elements[0]).parents(".strona_start");
let rodzic=undefined;
if((strona_start!==null)&&(strona_start.length>0)){
rodzic=strona_start[0];
}
StronicowyParser.IndeksujHeadLine(rodzic);
StronicowyParser.PrzeIndeksujWszystkieTOC(rodzic,true);
for(let q in elements){
let element=elements[q];
async function ElementDalszychObliczen(element,tab_promise2){
await StronicowyParser.muteks.zablokuj(true);
StronicowyParser.PoprawRozdzialyStron(element);
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu(element,tab_promise2);//Funkcja jako gadżet do numerowania rozdziałów.
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element,tab_promise2);
}
if((StronicowyParser.szablony&&StronicowyParser.szablony.LadujSzablon)&&(stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst)){
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(element,title,titles,undefined,tab_promise).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(()=>{
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika(element);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
ElementDalszychObliczen(element,tab_promise2);
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function ToogleTableOfContainer(panel){
let id=panel.target;
let tagname=id.tagName.toUpperCase();
//console.log(czy_klasa,tagname,"TYTAN)";
if(tagname=="BUTTON"){
let czy_klasa_1=$(id).hasClass('sidebar-toc-toggle');
let czy_klasa_2=$(id).hasClass('vector-toc-collapse-button');
if(czy_klasa_1){
$(id).parent().children().last().each((i,element)=>{
let expanded=$(id).attr('aria-expanded');
if(expanded=="false"){
$(element).css('display',"block");
$(element).closest('li').addClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','true');
}else if(expanded=="true"){
$(element).css('display',"none");
$(element).closest('li').removeClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','false');
}
});
}else if(czy_klasa_2){
$(id).parents('#sidebar-toc-label').siblings('ul').each((i,element)=>{
let ukryj=$(element).css('display');
if(ukryj!="none"){
$(element).css('display',"none");
id.innerHTML=" pokaż ";
}else{
$(element).css('display',"block");
id.innerHTML=" ukryj "
}
});
}
}
}
let mutekstoogle=new StronicowyParser.Muteks();
async function ScrollTableOfContainer(){
await mutekstoogle.zablokuj();
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header').first().each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=rect_sticky.height-15;
});
let parser=document.querySelector('#mw-content-text .mw-parser-output');
if(parser){
let rect=parser.getBoundingClientRect();
if(rect.top>=height_sticky){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item').first().addClass('sidebar-toc-list-item-active');
mutekstoogle.odblokuj();
return;
}
}else{
mutekstoogle.odblokuj();
return;
}
var str=$('#mw-content-text .mw-parser-output').find('h1, h2, h3, h4, h5, h6');
if((str!==null)&&(str.length>0)){
var naglowek;
for(i=0;i<str.length;++i){
let element=str[i];
let rect=element.getBoundingClientRect();
if(rect.top>=height_sticky){
let mw_naglowek=element.querySelector('.mw-headline');
if(mw_naglowek){
let id_naglowek=mw_naglowek.getAttribute('id');
let tak=false;
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+id_naglowek){
let display=window.getComputedStyle(element, null).getPropertyValue('display');
if(display!="none"){
tak=true;
}
}
});
if(tak){
naglowek=id_naglowek;
break;
}
}
}
}
if(naglowek){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+naglowek){
$(element).addClass('sidebar-toc-list-item-active');
}
});
}
}
mutekstoogle.odblokuj();
}
async function StronaSubst(element_strony,wikikod,aktualna_strona,tab_promise2){
await StronicowyParser.muteks.zablokuj();
StronicowyParser.NaprawNaglowkiStrony(element_strony,true);
let czy_wikikod=wikikod.match(/^[_\s]*$/g);
let strona_start=$('#mw-content-text .mw-parser-output .strona_start');
function CzyWszystkieNaglowkiWewnatrzStronaStart(){
let pole=$('#mw-content-text .mw-parser-output').find('h1,h2,h3,h4,h5,h6');
for(let i=0;i<pole.length;++i){
let s=strona_start.find(pole[i]);
if((s===null)||(s.length==0)){
return false;
}
}
return true;
}
if(czy_wikikod){
StronicowyParser.muteks.odblokuj();
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyArtykulu)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyArtykulu(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
let czy_numerowac=StronicowyParser.CzyWlaczycSideBarTOC(undefined,true);
if(czy_numerowac){
czy_numerowac=false;
tab_promise.push(true);
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: StronicowyParser.pageinfo.fullname,
text: '{{#invoke:StronicowyParser|CzyStronęNumerować|'+StronicowyParser.pageinfo.fullname+'}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
let wikikod=data.expandtemplates.wikitext;
let czy_wikikod=/^[_\s]*$/g.test(wikikod);
if(!czy_wikikod){
czy_numerowac=true;
}
tab_promise.pop();
}).catch(()=>{tab_promise.pop();});
}
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
let tab_promise=new Array(true);
StronicowyParser.LimitTOC(czy_numerowac,stronasubst_ukrywaj_toc);
StronicowyParser.szablony.LadujSzablon(null,null,null,czy_numerowac,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true)
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],czy_numerowac,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(czy_numerowac)){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
return;
}
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(null,null,null,undefined,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async (result) => {
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
await StronicowyParser.CzekajNaZakaczenie(tab_promise).then(async (result) => {}).catch(()=>{});
await StronicowyParser.muteks.zablokuj();
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
let rozdzial_ksiazki="rozdział_książki";
let tagclass=element_strony.getElementsByClassName(rozdzial_ksiazki);
if(tagclass===null){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return null;
}
let liczba_elementow=tagclass.length;
if(liczba_elementow==0){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return null;
}
let titles=new Array();
let tabstrona=new Array();
let tabs=new Array();
let tab_section=new Array();
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element_strony,tab_promise2);
}
let tab_hn=new Array();
async function edit_action(numer,strona,hn,link_strona,czy_link_nie_w_naglowku){
await StronicowyParser.muteks.zablokuj();
let linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection===null){
let editsection=document.createElement('span');
editsection.classList.add('mw-editsection');
let bracket_poczatek=document.createElement('span');
bracket_poczatek.classList.add('mw-editsection-bracket')
bracket_poczatek.innerHTML="[";
let a=document.createElement('a');
a.setAttribute('href',"/w/index.php?title="+StronicowyParser.kodowanie.EncodeHtml(strona,false,true)+"&action=edit"+((numer>0)?("§ion="+numer):""));
a.setAttribute('title',"Edytuj artykuł: "+link_strona);
a.innerHTML="edytuj";
let bracket_koniec=document.createElement('span');
bracket_koniec.classList.add('mw-editsection-bracket')
bracket_koniec.innerHTML="]";
editsection.appendChild(bracket_poczatek);
editsection.appendChild(a)
editsection.appendChild(bracket_koniec);
hn.appendChild(editsection);
}
linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection!==null){
let mw_editsection_bracket=linkstrony_editsection.querySelector('a');
if(mw_editsection_bracket!==null){
if(czy_link_nie_w_naglowku){
let a=document.createElement('a');
a.innerHTML="artykuł";
a.setAttribute("href",StronicowyParser.kodowanie.EncodeHtml("/wiki/"+StronicowyParser.kodowanie.EncodeHtml(link_strona,false,true)));
a.setAttribute("title","Zobacz artykuł: "+link_strona);
let span=document.createElement('span');
span.innerHTML="| ";
span.setAttribute('class',"mw-editsection-bracket")
let czy_ma=$(mw_editsection_bracket).parent().hasClass('link');
if(czy_ma){
let rodzic_mw_editsection_bracket=mw_editsection_bracket.parentNode;
let span2=linkstrony_editsection.insertBefore(span, rodzic_mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}else{
let span2=linkstrony_editsection.insertBefore(span, mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}
}
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(linkstrony_editsection).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
}
for (let i=0;i<liczba_elementow;++i){
let tagclassname=tagclass[i];
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find("."+rozdzial_ksiazki);
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==tagclassname){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
if(tagclassname.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let class_element=tagclassname.getElementsByClassName('strona_subst');
let element;
if((class_element!==null)&&(class_element.length==1)){
element=class_element[0];
if(element.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let czy_link_nie_w_naglowku;
let strona_headline=tagclassname.getElementsByClassName('mw-headline');
let link_strona;
if((strona_headline!==null)&&(strona_headline.length==1)){
strona_a=strona_headline[0].getElementsByTagName('a');
if((strona_a!==null)&&(strona_a.length==1)){
link_strona=StronicowyParser.kodowanie.DecodeHtml(strona_a[0].getAttribute('href'));
if(link_strona!==null){
let re=/\/wiki\//g;
if(re.test(link_strona)){
link_strona=link_strona.substring(6,link_strona.length);
czy_link_nie_w_naglowku=false;
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}
}else{
link_strona=StronicowyParser.style.UsunStyle(element.innerHTML);
czy_link_nie_w_naglowku=true;
}
}
let re = /^[_\s]*$/g;
let dopasowanie = re.test(link_strona);
if(dopasowanie){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return;
};
link_strona=link_strona.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ").replace(/&/g,"&").replace(/ /g," ");
let hash=link_strona.replace(/^([^#]*)#(.*)$/,"$2").replace(/&/g,"&").replace(/ /g,"_");
/**/
let hn=strona_headline[0].parentNode;
if((hn===null)||(!hn.tagName.toUpperCase().match(/^H\d+$/g))){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
tab_section[i]=new Array(hn,link_strona,czy_link_nie_w_naglowku);
let strona=link_strona.match(/^[^#]*/g).toString();
async function PraceIteracyjne(tab_promise2){
await StronicowyParser.muteks.zablokuj();
if(/#/g.test(link_strona)){
let hash=link_strona.replace(/^([^#]*)#(.*)$/g,"$2");
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let numer=hn.innerHTML;
numer=parseInt(numer);
if(isNaN(numer)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return ;}
let tab_c=tab_section[c];
edit_action(numer,tab_c[1].match(/^[^#]*/g).toString(),tab_c[0],tab_c[1],tab_c[2]);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami){
if(!stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}else{
let uzupelniaj_sekcje_artykulow;
if(stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule){
uzupelniaj_sekcje_artykulow="tak";
}else{
uzupelniaj_sekcje_artykulow="";
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+link_strona+"|analiza=tak|uzupełniaj sekcje artykułów="+uzupelniaj_sekcje_artykulow+"|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
let a=headline.getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
a[0].setAttribute('title',stare);
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
}else{
edit_action(0,strona,hn,link_strona,czy_link_nie_w_naglowku);
if(stronasubst_aktualizowanie_nazw_artykulow){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+strona+"|analiza=tak|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceIteracyjne(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
/**/
tabs[i]=link_strona;
let czy=false;
for(let d in titles){
if(titles[d]==link_strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=link_strona;
}
if(tabstrona[link_strona]==null){
tabstrona[link_strona]=new Array();
}
let tab=tabstrona[link_strona];
let tablen=tab.length;
tabstrona[link_strona][tablen]=element;
}
async function PraceNaglowki(tab_promise2){
await StronicowyParser.muteks.zablokuj();
let promise;
if(element_strony==document){
let namespace=StronicowyParser.pageinfo.namespace;
let strona_podrecznika=((namespace!="")?(namespace+":"):"")+StronicowyParser.pageinfo.bookname;
promise=Promise.resolve(strona_podrecznika);
}else{
let zaan=$(element_strony).parents('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((zaan!==null)&&(zaan.length>0)){
let strona=zaan[0].getAttribute('nazwa_strony');
if(strona){
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](strona);
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}
if(tab_promise2){tab_promise2.push(true);}
promise.then(async (strona_podrecznika)=>{
await StronicowyParser.muteks.zablokuj();
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find(".klasa_nagłówka");
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)){
let g=0;
let tab_naglowka=new Array();
let tab_hn=new Array();
for(let z=0;z<klasa_naglowka.length;++z){
let pojedyncza_klasa_naglowka=klasa_naglowka[z];
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==pojedyncza_klasa_naglowka){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
let dana_klasa_naglowka=pojedyncza_klasa_naglowka.querySelector('.mw-headline');
if(dana_klasa_naglowka!==null){
if((dana_klasa_naglowka.parentNode!==null)&&(dana_klasa_naglowka.parentNode.tagName.toUpperCase().match(/^[Hh]\d+$/g))
&&(dana_klasa_naglowka.parentNode.parentNode!=null)&&(dana_klasa_naglowka.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&($(dana_klasa_naglowka.parentNode.parentNode).hasClass('klasa_nagłówka'))){
let naglowek=StronicowyParser.style.UsunStyle(dana_klasa_naglowka.innerHTML).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_").replace(/&/g,"&").replace(/ /g,"_");
let ww=1;
for(let x=0;x<tab_naglowka.length;++x){
if(tab_naglowka[x]==naglowek){
++ww;
}
}
naglowek=naglowek+((ww>1)?ww:"");
tab_naglowka[g]=naglowek;
tab_hn[g]=dana_klasa_naglowka.parentNode;
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, na stronie głównej podręcznika, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let nazwa_podrecznika=strona_podrecznika.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
let naglowek_sekcji_podrecznika=tab_naglowka[c].replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
edit_action(c+1,nazwa_podrecznika,tab_hn[c],nazwa_podrecznika+"#"+naglowek_sekcji_podrecznika,true);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();return;}
let headline=tab_hn[c].querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
++g;
}
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceNaglowki(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
function RozwazajNaglowki(){
let toc_fun=new StronicowyParser.ListaNodeTOC();
if((toc_fun.toc!==null)&&(toc_fun.toc.length>0)){
for(let w=0;w<toc_fun.toc.length;++w){
let czy_side_bar_toc=toc_fun.CzySideBarToc(toc_fun.toc[w]);
let ile_jest=0;
let li=toc_fun.toc[w].getElementsByTagName('li');
if((li!==null)&&(li.length>0)){
for(let dd=0;dd<li.length;++dd){
let element_li=li[dd];
let tocnumber;let toctext_wartosc;
if(czy_side_bar_toc){
tocnumber=element_li.querySelector('.sidebar-toc-numb');
if(!tocnumber){continue;}
toctext_wartosc=element_li.querySelector('.sidebar-toc-text').innerHTML.replace(new RegExp(StronicowyParser.wzor.BezZnakowSpecjalnych(tocnumber.outerHTML),"g"),"");
}else{
tocnumber=element_li.querySelector('.tocnumber');
toctext_wartosc=element_li.querySelector('.toctext').innerHTML;
}
if((tocnumber!==null)&&(toctext_wartosc!==null)){
let czy_jest=undefined;
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)&&(klasa_naglowka[ile_jest]!=null)){
let element_klasa_naglowka=klasa_naglowka[ile_jest];
let headline=element_klasa_naglowka.querySelector('.mw-headline');
if((headline!==null)
&&(headline.parentNode!==null)
&&(headline.parentNode.tagName.toUpperCase().match(/^H\d+$/))
&&(headline.parentNode.parentNode!==null)
&&(headline.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&(headline.parentNode.parentNode===element_klasa_naglowka)
){
let element_a;
if(czy_side_bar_toc){
element_a=tocnumber.parentNode.parentNode;
}else{
element_a=tocnumber.parentNode;
}
if(element_a.tagName.toUpperCase()=="A"){
let href=StronicowyParser.kodowanie.DecodeHtml(element_a.getAttribute('href'));
if(href!==null){
href=href.replace(/^#/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
let id_headline=headline.getAttribute('id');
if(id_headline!==null){
id_headline=id_headline.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
if(href!=id_headline){czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
if(czy_jest===undefined){ile_jest+=1;}
if((czy_jest===undefined)||(!czy_jest)){
let element_toctext=StronicowyParser.style.UsunStyle(toctext_wartosc).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ");
if(stronasubst_tablica_rozdzialow[element_toctext]==null){
stronasubst_tablica_rozdzialow[element_toctext]=new Array(tocnumber);
}else{
stronasubst_tablica_rozdzialow[element_toctext].push(tocnumber);
}
}
}
}
}
}
}
}
StronicowyParser.LimitTOC(true,stronasubst_ukrywaj_toc);
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],true,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(StronicowyParser.CzyWlaczycSideBarTOC(undefined,true))){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
RozwazajNaglowki();
if(stronasubst_mathml){
$("div.toc ul > li > a > span.toctext").toggleClass("mathml");
$("div.toc_spis ul > li > a > span.toctext").toggleClass("mathml");
$("div.mw-table-of-contents-container > nav.sidebar-toc ul > li > a > div.sidebar-toc-text").toggleClass("mathml");
}
function Strona(strona){
let strona_re=StronicowyParser.wzor.BezZnakowSpecjalnych(strona);
let re=new RegExp("^\\s*"+strona_re+"\\s*#","g");
return re;
}
function CzyArtykulyZNaglowkamiDlaStrony(re){
for(let s in titles){
let czy_hash=titles[s].match(re);
if(czy_hash){
return true;
}
}
return false;
}
let catlinks_fun=new StronicowyParser.LinkiKategorii();
await catlinks_fun.PobierzKategorieStrony();
for ( let t in titles ) {
let strona=titles[t].match(/^[^#]*/g).toString();
let szablon_artykulu;
let re_strona=Strona(strona);
let czy_naglowki=CzyArtykulyZNaglowkamiDlaStrony(re_strona);
if(!czy_naglowki){
szablon_artykulu="{{:"+strona+"}}";
}else{
/*---------------------------------*/
let rozdzial1=null;
let re=/^([^#]*)#(.*)$/g;
if(re.test(titles[t])){
rozdzial1=titles[t].replace(re,"$2");
rozdzial1=rozdzial1.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial1="";}
let rozdzial2=null;
let tit=titles[parseInt(t)+1];
if( tit && re.test(tit) && re_strona.test(tit)){
rozdzial2=tit.replace(re,"$2");
rozdzial2=rozdzial2.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial2="";}
/*---------------------------*/
szablon_artykulu="{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|TekstRozdziałuStrony|"+strona+"|"+rozdzial1+"|"+rozdzial2+"}}}}";
}
szablon_artykulu="{{PrzytnijTekst|"+szablon_artykulu+"}}";
if(stronasubst_opakuj_kategorie_ze_sortowaniem){
szablon_artykulu="{{OpakujKategorieZeSortowaniem|"+szablon_artykulu+"}}"
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text|categories',
title: strona,
text: "<div class=\"hn hn_"+t+"\">\n"+szablon_artykulu+"\n</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
catlinks_fun.AnalizaKategorii(data).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);}
WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2).then((result) => {}).catch((error) => {});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function CzyszczenieZZdarzeńTableOfContent(){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
}
}
CzyszczenieZZdarzeńTableOfContent();
let tab_promise2=new StronicowyParser.SugerowaneObiekty();
async function CzyStronaSubst(element,aktualna_strona,tab_promise2){
if(tab_promise2){tab_promise2.push(true);}
await StronicowyParser.muteks.zablokuj();
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: aktualna_strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.expandtemplates.wikitext;
if((wikikod!==null)&&(aktualna_strona!==null)){
if(tab_promise2){tab_promise2.push(true);}
StronaSubst(element,wikikod,aktualna_strona,tab_promise2).then((result) => {}).catch((error) => {});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
let aktualna_strona=StronicowyParser.pageinfo.fullname;
if(tab_promise2){tab_promise2.push(true,true);}
CzyStronaSubst(document,aktualna_strona,tab_promise2);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
function Progress(){
var c=document.createElement('div');
c.setAttribute("id","pasek_postępu")
c.setAttribute('style','margin-top:-2px;margin-left:-2px;position:absolute;width:250px;height:80px;border:1px solid black;box-sizing:border-box;padding:5px;background-color:white;display:flex;flex-direction:column;box-sizing:border-box;');
var label=document.createElement('label');
label.setAttribute('for','file1');
label.innerHTML="<span style=\"color:blue;\">Ukończone wątki: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_0=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file1')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;');
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_1=c.appendChild(progress);
var label=document.createElement('label');
label.setAttribute('for','file2');
label.innerHTML="<span style=\"color:blue;\">Zwolnione blokaty: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_1=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file2')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;')
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_2=c.appendChild(progress);
function PozycjaXY(){
c.style.top=(window.scrollY+document.documentElement.clientHeight-parseFloat(c.style.height))+"px";
c.style.left=(window.scrollX+document.documentElement.clientWidth-parseFloat(c.style.width))+"px";
}
document.querySelector('body').appendChild(c);
PozycjaXY();
$(window).on('scroll',PozycjaXY);
$(window).on('resize',PozycjaXY);
return new Array(element_body_progress_1,element_body_progress_2,span_0,span_1);
}
var arr;
function __FUNKCJA(arr){
arr[0].setAttribute("value","0");
arr[1].setAttribute("value","0");
let dodatnie_0=tab_promise2.lengthPlus;
let ujemne_0=tab_promise2.lengthMinus;
let dodatnie_1=StronicowyParser.muteks.LiczbaBlokatPlus;
let ujemne_1=StronicowyParser.muteks.LiczbaBlokatMinus;
let postep_0=((dodatnie_0>0)?((ujemne_0/dodatnie_0)*100):0);
let postep_1=((dodatnie_1>0)?((ujemne_1/dodatnie_1)*100):0);
arr[0].setAttribute("value",postep_0);
arr[1].setAttribute("value",postep_1);
arr[2].innerHTML=(parseInt(postep_0*1000)/1000)+"%";
arr[3].innerHTML=(parseInt(postep_1*1000)/1000)+"%";
}
StronicowyParser.CzekajNaZakaczenie(tab_promise2,null,StronicowyParser.muteks,(tab_promise)=>{arr=Progress();__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);setTimeout(function(){let node_postep=document.getElementById('pasek_postępu');$(node_postep).remove();},2000);}).then(async (result) => {}).catch(()=>{});
};
StronicowyParser.WyswietlStronyKsiazki().then((result) => {}).catch((error) => {});
});
syeqhk5zhe9a49gdxknf34nk4qszy1r
437322
437321
2022-08-09T17:16:38Z
Persino
2851
javascript
text/javascript
mw.loader.using('ext.gadget.gConfig', function(){
let globalne_zmienne=this;
StronicowyParser.WyswietlStronyKsiazki=async function(){
await StronicowyParser.muteks.zablokuj();
let stronasubst_latex=undefined;
let stronasubst_mathml=undefined;
let stronasubst_opakuj_kategorie_ze_sortowaniem=undefined;
let stronasubst_ukrywaj_toc=undefined;
let stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=undefined;
let stronasubst_aktualizowanie_nazw_artykulow=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=undefined;
let stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=undefined;
let stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=undefined;
let stronasubst_nie_usuwaj_styli=undefined;
let stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=undefined;
if((globalne_zmienne.gConfig!==undefined)&&(globalne_zmienne.gConfig.register!==undefined)&&(globalne_zmienne.gConfig.get!==undefined)){
mw.messages.set({
'StronaSubst-name': 'Strona zbiorcza',
'StronaSubst-description-page': 'Wikibooks:StronicowyParser/StronaSubst',
'StronaSubst-latex': 'Zamiast wzorów, wstaw tekst latexowy, w przeciwnym przypadku jest w formie LaTeX.',
'StronaSubst-mathml': 'Zamiast wzorów latexowych, wstaw je w formie znaczników MathML.',
'StronaSubst-opakuj_kategorie_ze_sortowaniem' : 'W stronach zbiorczych opakowuje kategorie, w postaci ramki, dla każdego artykułu z osobna.',
'StronaSubst-ukrywaj_toc' : "Ukrywa, począwszy od jakiegoś poziomu wszystkich tam spisów treści, na stronach zbiorczych.",
'StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach' : "Włącza dymki, nad linkami, w ładowanych dynamicznie stronach, tworząc je inteligentnymi.",
'StronaSubst-aktualizowanie_nazw_artykulow' : 'Aktualizuje na podstawie strony głównej nazwy tylko artykułów.',
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami' : "Aktualizuje sekcje poszczegónych rozdziałów artykułów ładowanych rozdziałami, domyślnie według sekcji w tych jednostkach.",
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika' : 'Aktualizuje, sekcje artykułów ładowanych rozdziałami, na podstawie strony głównej książki, a nie jego artykułów.',
'StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej' : 'Aktualizuje nagłówki strony głównej podręcznika na stronie zbiorczej.',
'StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule' : 'Aktualizuje, brakujące sekcje rozdziałów ładowanych rozdziałami artykułów, według wpisów na stronie głównej, na stronie zbiorczej.',
'StronaSubst-nie_usuwaj_styli' : 'Nie usuwa styli z nagłówków ładowanych stron.',
'StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst' : 'Rozwijaj szablony oznaczone szablonem SzablonSubst.',
});
gConfig.register('StronaSubst', {name: mw.msg('StronaSubst-name'), descriptionPage: mw.msg('StronaSubst-description-page')}, [
{
name: 'latex',
desc: mw.msg('StronaSubst-latex'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_latex']
},
{
name: 'mathml',
desc: mw.msg('StronaSubst-mathml'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_mathml']
},
{
name: 'opakuj_kategorie_ze_sortowaniem',
desc: mw.msg('StronaSubst-opakuj_kategorie_ze_sortowaniem'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_opakuj_kategorie_ze_sortowaniem']
},
{
name: 'ukrywaj_toc',
desc: mw.msg('StronaSubst-ukrywaj_toc'),
type: 'integer',
deflt: 0,
validation: function(n){ if((n<0)||(n==1)){ throw 'Wartość dotycząca poziomu ukrywania spisów treści jest nieprawidłowa!' }; return n; },
legacy: [window, 'wb_stronasubst_ukrywaj_toc']
},
{
name: 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach',
desc: mw.msg('StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach']
},
{
name: 'aktualizowanie_nazw_artykulow',
desc: mw.msg('StronaSubst-aktualizowanie_nazw_artykulow'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nazw_artykulow']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika']
},
{
name: 'aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej',
desc: mw.msg('StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej']
},
{
name: 'aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule',
desc: mw.msg('StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule']
},
{
name: 'nie_usuwaj_styli',
desc: mw.msg('StronaSubst-nie_usuwaj_styli'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_nie_usuwaj_styli']
},
{
name: 'rozwijaj_szablony_oznaczone_szablonem_szablonsubst',
desc: mw.msg('StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst']
},
]);
stronasubst_latex = (gConfig.get('StronaSubst', 'latex')==true);
stronasubst_mathml = (((gConfig.get('StronaSubst', 'mathml'))&&(!stronasubst_latex))==true);
stronasubst_opakuj_kategorie_ze_sortowaniem = (gConfig.get('StronaSubst', 'opakuj_kategorie_ze_sortowaniem')==true);
stronasubst_ukrywaj_toc = gConfig.get('StronaSubst', 'ukrywaj_toc');
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach = gConfig.get('StronaSubst', 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach');
stronasubst_aktualizowanie_nazw_artykulow = (gConfig.get('StronaSubst', 'aktualizowanie_nazw_artykulow')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami = (gConfig.get('StronaSubst', 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika = (gConfig.get('StronaSubst','aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika')==true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej = (gConfig.get('StronaSubst','aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej')==true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule = (gConfig.get('StronaSubst','aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule')==true);
stronasubst_nie_usuwaj_styli = (gConfig.get('StronaSubst','nie_usuwaj_styli')==true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst = (gConfig.get('StronaSubst','rozwijaj_szablony_oznaczone_szablonem_szablonsubst')==true);
}
//let podglad=document.querySelector('body:not(.action-view)');
//if(podglad){return;}
let stronasubst_tablica_tych_samych=new Array();
let stronasubst_tablica_rozdzialow=new Array();
let stronasubst_tablica_alternatywnych_nazw=new Array();
stronasubst_latex=((stronasubst_latex!==undefined)?stronasubst_latex:false);
stronasubst_mathml=((stronasubst_mathml!==undefined)?stronasubst_mathml:true);
stronasubst_opakuj_kategorie_ze_sortowaniem=((stronasubst_opakuj_kategorie_ze_sortowaniem!==undefined)?stronasubst_opakuj_kategorie_ze_sortowaniem:false);
stronasubst_ukrywaj_toc=parseInt(((stronasubst_ukrywaj_toc!==undefined)?stronasubst_ukrywaj_toc:0));
stronasubst_ukrywaj_toc=((!isNaN(stronasubst_ukrywaj_toc))?stronasubst_ukrywaj_toc:0);
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=((stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach!==undefined)?stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach:true);
stronasubst_aktualizowanie_nazw_artykulow=((stronasubst_aktualizowanie_nazw_artykulow!==undefined)?stronasubst_aktualizowanie_nazw_artykulow:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika:true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=((stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej!==undefined)?stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej:true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=((stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule!==undefined)?stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule:true);
stronasubst_nie_usuwaj_styli=((stronasubst_nie_usuwaj_styli!==undefined)?stronasubst_nie_usuwaj_styli:true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=((stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst!==undefined)?stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst:true);
async function AnalizujDalejSzablonSubst(element_strony,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let rozdzial_ksiazki="rozdział_książki";
let el=$(element_strony).find('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((el!==null)&&(el.length>0)){
for(let i=0;i<el.length;++i){
let element_el=el[i];
let ksiazka=element_el.querySelector("."+rozdzial_ksiazki);
if(ksiazka){
let nazwa_strony=element_el.getAttribute('nazwa_strony');
if(tab_promise2){tab_promise2.push(true);}
CzyStronaSubst(element_el,nazwa_strony,tab_promise2);
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
async function WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let title=data.parse.title;
let wikikod=data.parse.text['*'];
let strona_hash;
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let t=tab_uzyskane[0];
if(t==undefined){
console.log("Nie wykryto znacznika lsth_\d+.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
strona_hash=titles[t];
let selflink=document.createElement('div');
selflink.innerHTML=wikikod;
let czy_selflink=selflink.getElementsByClassName('selflink');
if((czy_selflink!==null)&&(czy_selflink.length==1)){
let elements=tabstrona[strona_hash];
let a=document.createElement('a');/*Tworzenie linku*/
a.setAttribute('href',StronicowyParser.kodowanie.EncodeHtml(title));
a.innerHTML=strona_hash;
let span=document.createElement('span');
span.appendChild(a);
span.setAttribute("class","niw link");/*Dodawanie klasy, by inny skript JS to przeanalizował jako link*/
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo(span);
}
for(let q in elements){
let element=elements[q];
element.innerHTML="";
element.appendChild(span);
$(element).wrap(function(){return "<strong></strong>";});
let przed=document.createTextNode("{{:");
let po=document.createTextNode("}}");
element.insertBefore(przed,element.firstChild);
element.appendChild(po);
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=tab_uzyskane[1].innerHTML;
let elements=tabstrona[strona_hash];
for(let q in elements){
let element=elements[q];
element.innerHTML=wikikod;
StronicowyParser.ZamienLinkiNaLinkiDoStronyAktualnej(element,title,titles);
}
StronicowyParser.AktualizujSpisTresciModuluStrony(elements,tabs,strona_hash,stronasubst_tablica_alternatywnych_nazw,stronasubst_tablica_tych_samych,stronasubst_tablica_rozdzialow,true,stronasubst_latex,stronasubst_mathml)
let strona_start=$(elements[0]).parents(".strona_start");
let rodzic=undefined;
if((strona_start!==null)&&(strona_start.length>0)){
rodzic=strona_start[0];
}
StronicowyParser.IndeksujHeadLine(rodzic);
StronicowyParser.PrzeIndeksujWszystkieTOC(rodzic,true);
for(let q in elements){
let element=elements[q];
async function ElementDalszychObliczen(element,tab_promise2){
await StronicowyParser.muteks.zablokuj(true);
StronicowyParser.PoprawRozdzialyStron(element);
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu(element,tab_promise2);//Funkcja jako gadżet do numerowania rozdziałów.
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element,tab_promise2);
}
if((StronicowyParser.szablony&&StronicowyParser.szablony.LadujSzablon)&&(stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst)){
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(element,title,titles,undefined,tab_promise).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(()=>{
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika(element);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
ElementDalszychObliczen(element,tab_promise2);
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function ToogleTableOfContainer(panel){
let id=panel.target;
let tagname=id.tagName.toUpperCase();
//console.log(czy_klasa,tagname,"TYTAN)";
if(tagname=="BUTTON"){
let czy_klasa_1=$(id).hasClass('sidebar-toc-toggle');
let czy_klasa_2=$(id).hasClass('vector-toc-collapse-button');
if(czy_klasa_1){
$(id).parent().children().last().each((i,element)=>{
let expanded=$(id).attr('aria-expanded');
if(expanded=="false"){
$(element).css('display',"block");
$(element).closest('li').addClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','true');
}else if(expanded=="true"){
$(element).css('display',"none");
$(element).closest('li').removeClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','false');
}
});
}else if(czy_klasa_2){
$(id).parents('#sidebar-toc-label').siblings('ul').each((i,element)=>{
let ukryj=$(element).css('display');
if(ukryj!="none"){
$(element).css('display',"none");
id.innerHTML=" pokaż ";
}else{
$(element).css('display',"block");
id.innerHTML=" ukryj "
}
});
}
}
}
let mutekstoogle=new StronicowyParser.Muteks();
async function ScrollTableOfContainer(){
await mutekstoogle.zablokuj();
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header').first().each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=rect_sticky.height-15;
});
let parser=document.querySelector('#mw-content-text .mw-parser-output');
if(parser){
let rect=parser.getBoundingClientRect();
if(rect.top>=height_sticky){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item').first().addClass('sidebar-toc-list-item-active');
mutekstoogle.odblokuj();
return;
}
}else{
mutekstoogle.odblokuj();
return;
}
var str=$('#mw-content-text .mw-parser-output').find('h1, h2, h3, h4, h5, h6');
if((str!==null)&&(str.length>0)){
var naglowek;
for(i=0;i<str.length;++i){
let element=str[i];
let rect=element.getBoundingClientRect();
if(rect.top>=height_sticky){
let mw_naglowek=element.querySelector('.mw-headline');
if(mw_naglowek){
let id_naglowek=mw_naglowek.getAttribute('id');
let tak=false;
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+id_naglowek){
let display=window.getComputedStyle(element, null).getPropertyValue('display');
if(display!="none"){
tak=true;
}
}
});
if(tak){
naglowek=id_naglowek;
break;
}
}
}
}
if(naglowek){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+naglowek){
$(element).addClass('sidebar-toc-list-item-active');
}
});
}
}
mutekstoogle.odblokuj();
}
async function StronaSubst(element_strony,wikikod,aktualna_strona,tab_promise2){
await StronicowyParser.muteks.zablokuj();
StronicowyParser.NaprawNaglowkiStrony(element_strony,true);
let czy_wikikod=wikikod.match(/^[_\s]*$/g);
let strona_start=$('#mw-content-text .mw-parser-output .strona_start');
function CzyWszystkieNaglowkiWewnatrzStronaStart(){
let pole=$('#mw-content-text .mw-parser-output').find('h1,h2,h3,h4,h5,h6');
for(let i=0;i<pole.length;++i){
let s=strona_start.find(pole[i]);
if((s===null)||(s.length==0)){
return false;
}
}
return true;
}
if(czy_wikikod){
StronicowyParser.muteks.odblokuj();
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyArtykulu)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyArtykulu(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
let czy_numerowac=StronicowyParser.CzyWlaczycSideBarTOC(undefined,true);
if(czy_numerowac){
czy_numerowac=false;
tab_promise.push(true);
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: StronicowyParser.pageinfo.fullname,
text: '{{#invoke:StronicowyParser|CzyStronęNumerować|'+StronicowyParser.pageinfo.fullname+'}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
let wikikod=data.expandtemplates.wikitext;
let czy_wikikod=/^[_\s]*$/g.test(wikikod);
if(!czy_wikikod){
czy_numerowac=true;
}
tab_promise.pop();
}).catch(()=>{tab_promise.pop();});
}
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
let tab_promise=new Array(true);
StronicowyParser.LimitTOC(czy_numerowac,stronasubst_ukrywaj_toc);
StronicowyParser.szablony.LadujSzablon(null,null,null,czy_numerowac,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true)
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],czy_numerowac,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(czy_numerowac)){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
return;
}
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(null,null,null,undefined,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async (result) => {
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
await StronicowyParser.CzekajNaZakaczenie(tab_promise).then(async (result) => {}).catch(()=>{});
await StronicowyParser.muteks.zablokuj();
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
let rozdzial_ksiazki="rozdział_książki";
let tagclass=element_strony.getElementsByClassName(rozdzial_ksiazki);
if(tagclass===null){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return null;
}
let liczba_elementow=tagclass.length;
if(liczba_elementow==0){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return null;
}
let titles=new Array();
let tabstrona=new Array();
let tabs=new Array();
let tab_section=new Array();
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element_strony,tab_promise2);
}
let tab_hn=new Array();
async function edit_action(numer,strona,hn,link_strona,czy_link_nie_w_naglowku){
await StronicowyParser.muteks.zablokuj();
let linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection===null){
let editsection=document.createElement('span');
editsection.classList.add('mw-editsection');
let bracket_poczatek=document.createElement('span');
bracket_poczatek.classList.add('mw-editsection-bracket')
bracket_poczatek.innerHTML="[";
let a=document.createElement('a');
a.setAttribute('href',"/w/index.php?title="+StronicowyParser.kodowanie.EncodeHtml(strona,false,true)+"&action=edit"+((numer>0)?("§ion="+numer):""));
a.setAttribute('title',"Edytuj artykuł: "+link_strona);
a.innerHTML="edytuj";
let bracket_koniec=document.createElement('span');
bracket_koniec.classList.add('mw-editsection-bracket')
bracket_koniec.innerHTML="]";
editsection.appendChild(bracket_poczatek);
editsection.appendChild(a)
editsection.appendChild(bracket_koniec);
hn.appendChild(editsection);
}
linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection!==null){
let mw_editsection_bracket=linkstrony_editsection.querySelector('a');
if(mw_editsection_bracket!==null){
if(czy_link_nie_w_naglowku){
let a=document.createElement('a');
a.innerHTML="artykuł";
a.setAttribute("href",StronicowyParser.kodowanie.EncodeHtml("/wiki/"+StronicowyParser.kodowanie.EncodeHtml(link_strona,false,true)));
a.setAttribute("title","Zobacz artykuł: "+link_strona);
let span=document.createElement('span');
span.innerHTML="| ";
span.setAttribute('class',"mw-editsection-bracket")
let czy_ma=$(mw_editsection_bracket).parent().hasClass('link');
if(czy_ma){
let rodzic_mw_editsection_bracket=mw_editsection_bracket.parentNode;
let span2=linkstrony_editsection.insertBefore(span, rodzic_mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}else{
let span2=linkstrony_editsection.insertBefore(span, mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}
}
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(linkstrony_editsection).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
}
for (let i=0;i<liczba_elementow;++i){
let tagclassname=tagclass[i];
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find("."+rozdzial_ksiazki);
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==tagclassname){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
if(tagclassname.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let class_element=tagclassname.getElementsByClassName('strona_subst');
let element;
if((class_element!==null)&&(class_element.length==1)){
element=class_element[0];
if(element.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let czy_link_nie_w_naglowku;
let strona_headline=tagclassname.getElementsByClassName('mw-headline');
let link_strona;
if((strona_headline!==null)&&(strona_headline.length==1)){
strona_a=strona_headline[0].getElementsByTagName('a');
if((strona_a!==null)&&(strona_a.length==1)){
link_strona=StronicowyParser.kodowanie.DecodeHtml(strona_a[0].getAttribute('href'));
if(link_strona!==null){
let re=/\/wiki\//g;
if(re.test(link_strona)){
link_strona=link_strona.substring(6,link_strona.length);
czy_link_nie_w_naglowku=false;
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}
}else{
link_strona=StronicowyParser.style.UsunStyle(element.innerHTML);
czy_link_nie_w_naglowku=true;
}
}
let re = /^[_\s]*$/g;
let dopasowanie = re.test(link_strona);
if(dopasowanie){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return;
};
link_strona=link_strona.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ").replace(/&/g,"&").replace(/ /g," ");
let hash=link_strona.replace(/^([^#]*)#(.*)$/,"$2").replace(/&/g,"&").replace(/ /g,"_");
/**/
let hn=strona_headline[0].parentNode;
if((hn===null)||(!hn.tagName.toUpperCase().match(/^H\d+$/g))){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
tab_section[i]=new Array(hn,link_strona,czy_link_nie_w_naglowku);
let strona=link_strona.match(/^[^#]*/g).toString();
async function PraceIteracyjne(tab_promise2){
await StronicowyParser.muteks.zablokuj();
if(/#/g.test(link_strona)){
let hash=link_strona.replace(/^([^#]*)#(.*)$/g,"$2");
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let numer=hn.innerHTML;
numer=parseInt(numer);
if(isNaN(numer)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return ;}
let tab_c=tab_section[c];
edit_action(numer,tab_c[1].match(/^[^#]*/g).toString(),tab_c[0],tab_c[1],tab_c[2]);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami){
if(!stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}else{
let uzupelniaj_sekcje_artykulow;
if(stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule){
uzupelniaj_sekcje_artykulow="tak";
}else{
uzupelniaj_sekcje_artykulow="";
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+link_strona+"|analiza=tak|uzupełniaj sekcje artykułów="+uzupelniaj_sekcje_artykulow+"|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
let a=headline.getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
a[0].setAttribute('title',stare);
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
}else{
edit_action(0,strona,hn,link_strona,czy_link_nie_w_naglowku);
if(stronasubst_aktualizowanie_nazw_artykulow){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+strona+"|analiza=tak|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceIteracyjne(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
/**/
tabs[i]=link_strona;
let czy=false;
for(let d in titles){
if(titles[d]==link_strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=link_strona;
}
if(tabstrona[link_strona]==null){
tabstrona[link_strona]=new Array();
}
let tab=tabstrona[link_strona];
let tablen=tab.length;
tabstrona[link_strona][tablen]=element;
}
async function PraceNaglowki(tab_promise2){
await StronicowyParser.muteks.zablokuj();
let promise;
if(element_strony==document){
let namespace=StronicowyParser.pageinfo.namespace;
let strona_podrecznika=((namespace!="")?(namespace+":"):"")+StronicowyParser.pageinfo.bookname;
promise=Promise.resolve(strona_podrecznika);
}else{
let zaan=$(element_strony).parents('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((zaan!==null)&&(zaan.length>0)){
let strona=zaan[0].getAttribute('nazwa_strony');
if(strona){
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](strona);
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}
if(tab_promise2){tab_promise2.push(true);}
promise.then(async (strona_podrecznika)=>{
await StronicowyParser.muteks.zablokuj();
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find(".klasa_nagłówka");
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)){
let g=0;
let tab_naglowka=new Array();
let tab_hn=new Array();
for(let z=0;z<klasa_naglowka.length;++z){
let pojedyncza_klasa_naglowka=klasa_naglowka[z];
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==pojedyncza_klasa_naglowka){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
let dana_klasa_naglowka=pojedyncza_klasa_naglowka.querySelector('.mw-headline');
if(dana_klasa_naglowka!==null){
if((dana_klasa_naglowka.parentNode!==null)&&(dana_klasa_naglowka.parentNode.tagName.toUpperCase().match(/^[Hh]\d+$/g))
&&(dana_klasa_naglowka.parentNode.parentNode!=null)&&(dana_klasa_naglowka.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&($(dana_klasa_naglowka.parentNode.parentNode).hasClass('klasa_nagłówka'))){
let naglowek=StronicowyParser.style.UsunStyle(dana_klasa_naglowka.innerHTML).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_").replace(/&/g,"&").replace(/ /g,"_");
let ww=1;
for(let x=0;x<tab_naglowka.length;++x){
if(tab_naglowka[x]==naglowek){
++ww;
}
}
naglowek=naglowek+((ww>1)?ww:"");
tab_naglowka[g]=naglowek;
tab_hn[g]=dana_klasa_naglowka.parentNode;
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, na stronie głównej podręcznika, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let nazwa_podrecznika=strona_podrecznika.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
let naglowek_sekcji_podrecznika=tab_naglowka[c].replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
edit_action(c+1,nazwa_podrecznika,tab_hn[c],nazwa_podrecznika+"#"+naglowek_sekcji_podrecznika,true);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();return;}
let headline=tab_hn[c].querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
++g;
}
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceNaglowki(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
function RozwazajNaglowki(){
let toc_fun=new StronicowyParser.ListaNodeTOC();
if((toc_fun.toc!==null)&&(toc_fun.toc.length>0)){
for(let w=0;w<toc_fun.toc.length;++w){
let czy_side_bar_toc=toc_fun.CzySideBarToc(toc_fun.toc[w]);
let ile_jest=0;
let li=toc_fun.toc[w].getElementsByTagName('li');
if((li!==null)&&(li.length>0)){
for(let dd=0;dd<li.length;++dd){
let element_li=li[dd];
let tocnumber;let toctext_wartosc;
if(czy_side_bar_toc){
tocnumber=element_li.querySelector('.sidebar-toc-numb');
if(!tocnumber){continue;}
toctext_wartosc=element_li.querySelector('.sidebar-toc-text').innerHTML.replace(new RegExp(StronicowyParser.wzor.BezZnakowSpecjalnych(tocnumber.outerHTML),"g"),"");
}else{
tocnumber=element_li.querySelector('.tocnumber');
toctext_wartosc=element_li.querySelector('.toctext').innerHTML;
}
if((tocnumber!==null)&&(toctext_wartosc!==null)){
let czy_jest=undefined;
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)&&(klasa_naglowka[ile_jest]!=null)){
let element_klasa_naglowka=klasa_naglowka[ile_jest];
let headline=element_klasa_naglowka.querySelector('.mw-headline');
if((headline!==null)
&&(headline.parentNode!==null)
&&(headline.parentNode.tagName.toUpperCase().match(/^H\d+$/))
&&(headline.parentNode.parentNode!==null)
&&(headline.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&(headline.parentNode.parentNode===element_klasa_naglowka)
){
let element_a;
if(czy_side_bar_toc){
element_a=tocnumber.parentNode.parentNode;
}else{
element_a=tocnumber.parentNode;
}
if(element_a.tagName.toUpperCase()=="A"){
let href=StronicowyParser.kodowanie.DecodeHtml(element_a.getAttribute('href'));
if(href!==null){
href=href.replace(/^#/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
let id_headline=headline.getAttribute('id');
if(id_headline!==null){
id_headline=id_headline.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
if(href!=id_headline){czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
if(czy_jest===undefined){ile_jest+=1;}
if((czy_jest===undefined)||(!czy_jest)){
let element_toctext=StronicowyParser.style.UsunStyle(toctext_wartosc).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ");
if(stronasubst_tablica_rozdzialow[element_toctext]==null){
stronasubst_tablica_rozdzialow[element_toctext]=new Array(tocnumber);
}else{
stronasubst_tablica_rozdzialow[element_toctext].push(tocnumber);
}
}
}
}
}
}
}
}
StronicowyParser.LimitTOC(true,stronasubst_ukrywaj_toc);
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],true,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(StronicowyParser.CzyWlaczycSideBarTOC(undefined,true))){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
RozwazajNaglowki();
if(stronasubst_mathml){
$("div.toc ul > li > a > span.toctext").toggleClass("mathml");
$("div.toc_spis ul > li > a > span.toctext").toggleClass("mathml");
$("div.mw-table-of-contents-container > nav.sidebar-toc ul > li > a > div.sidebar-toc-text").toggleClass("mathml");
}
function Strona(strona){
let strona_re=StronicowyParser.wzor.BezZnakowSpecjalnych(strona);
let re=new RegExp("^\\s*"+strona_re+"\\s*#","g");
return re;
}
function CzyArtykulyZNaglowkamiDlaStrony(re){
for(let s in titles){
let czy_hash=titles[s].match(re);
if(czy_hash){
return true;
}
}
return false;
}
let catlinks_fun=new StronicowyParser.LinkiKategorii();
await catlinks_fun.PobierzKategorieStrony();
for ( let t in titles ) {
let strona=titles[t].match(/^[^#]*/g).toString();
let szablon_artykulu;
let re_strona=Strona(strona);
let czy_naglowki=CzyArtykulyZNaglowkamiDlaStrony(re_strona);
if(!czy_naglowki){
szablon_artykulu="{{:"+strona+"}}";
}else{
/*---------------------------------*/
let rozdzial1=null;
let re=/^([^#]*)#(.*)$/g;
if(re.test(titles[t])){
rozdzial1=titles[t].replace(re,"$2");
rozdzial1=rozdzial1.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial1="";}
let rozdzial2=null;
let tit=titles[parseInt(t)+1];
if( tit && re.test(tit) && re_strona.test(tit)){
rozdzial2=tit.replace(re,"$2");
rozdzial2=rozdzial2.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial2="";}
/*---------------------------*/
szablon_artykulu="{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|TekstRozdziałuStrony|"+strona+"|"+rozdzial1+"|"+rozdzial2+"}}}}";
}
szablon_artykulu="{{PrzytnijTekst|"+szablon_artykulu+"}}";
if(stronasubst_opakuj_kategorie_ze_sortowaniem){
szablon_artykulu="{{OpakujKategorieZeSortowaniem|"+szablon_artykulu+"}}"
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text|categories',
title: strona,
text: "<div class=\"hn hn_"+t+"\">\n"+szablon_artykulu+"\n</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
catlinks_fun.AnalizaKategorii(data).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);}
WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2).then((result) => {}).catch((error) => {});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function CzyszczenieZZdarzeńTableOfContent(){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
}
}
CzyszczenieZZdarzeńTableOfContent();
let tab_promise2=new StronicowyParser.SugerowaneObiekty();
async function CzyStronaSubst(element,aktualna_strona,tab_promise2){
if(tab_promise2){tab_promise2.push(true);}
await StronicowyParser.muteks.zablokuj();
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: aktualna_strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.expandtemplates.wikitext;
if((wikikod!==null)&&(aktualna_strona!==null)){
if(tab_promise2){tab_promise2.push(true);}
StronaSubst(element,wikikod,aktualna_strona,tab_promise2).then((result) => {}).catch((error) => {});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
let aktualna_strona=StronicowyParser.pageinfo.fullname;
if(tab_promise2){tab_promise2.push(true,true);}
CzyStronaSubst(document,aktualna_strona,tab_promise2);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
function Progress(){
var c=document.createElement('div');
c.setAttribute("id","pasek_postępu")
c.setAttribute('style','margin-top:-2px;margin-left:-2px;position:absolute;width:250px;height:80px;border:1px solid black;box-sizing:border-box;padding:0 5px;background-color:white;display:flex;flex-direction:column;box-sizing:border-box;');
var label=document.createElement('label');
label.setAttribute('for','file1');
label.innerHTML="<span style=\"color:blue;\">Ukończone wątki: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_0=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file1')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;');
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_1=c.appendChild(progress);
var label=document.createElement('label');
label.setAttribute('for','file2');
label.innerHTML="<span style=\"color:blue;\">Zwolnione blokaty: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_1=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file2')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;')
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_2=c.appendChild(progress);
function PozycjaXY(){
c.style.top=(window.scrollY+document.documentElement.clientHeight-parseFloat(c.style.height))+"px";
c.style.left=(window.scrollX+document.documentElement.clientWidth-parseFloat(c.style.width))+"px";
}
document.querySelector('body').appendChild(c);
PozycjaXY();
$(window).on('scroll',PozycjaXY);
$(window).on('resize',PozycjaXY);
return new Array(element_body_progress_1,element_body_progress_2,span_0,span_1);
}
var arr;
function __FUNKCJA(arr){
arr[0].setAttribute("value","0");
arr[1].setAttribute("value","0");
let dodatnie_0=tab_promise2.lengthPlus;
let ujemne_0=tab_promise2.lengthMinus;
let dodatnie_1=StronicowyParser.muteks.LiczbaBlokatPlus;
let ujemne_1=StronicowyParser.muteks.LiczbaBlokatMinus;
let postep_0=((dodatnie_0>0)?((ujemne_0/dodatnie_0)*100):0);
let postep_1=((dodatnie_1>0)?((ujemne_1/dodatnie_1)*100):0);
arr[0].setAttribute("value",postep_0);
arr[1].setAttribute("value",postep_1);
arr[2].innerHTML=(parseInt(postep_0*1000)/1000)+"%";
arr[3].innerHTML=(parseInt(postep_1*1000)/1000)+"%";
}
StronicowyParser.CzekajNaZakaczenie(tab_promise2,null,StronicowyParser.muteks,(tab_promise)=>{arr=Progress();__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);setTimeout(function(){let node_postep=document.getElementById('pasek_postępu');$(node_postep).remove();},2000);}).then(async (result) => {}).catch(()=>{});
};
StronicowyParser.WyswietlStronyKsiazki().then((result) => {}).catch((error) => {});
});
nmohvf6b9owjpdj8x0bafrul7674icb
437323
437322
2022-08-09T17:17:38Z
Persino
2851
javascript
text/javascript
mw.loader.using('ext.gadget.gConfig', function(){
let globalne_zmienne=this;
StronicowyParser.WyswietlStronyKsiazki=async function(){
await StronicowyParser.muteks.zablokuj();
let stronasubst_latex=undefined;
let stronasubst_mathml=undefined;
let stronasubst_opakuj_kategorie_ze_sortowaniem=undefined;
let stronasubst_ukrywaj_toc=undefined;
let stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=undefined;
let stronasubst_aktualizowanie_nazw_artykulow=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=undefined;
let stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=undefined;
let stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=undefined;
let stronasubst_nie_usuwaj_styli=undefined;
let stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=undefined;
if((globalne_zmienne.gConfig!==undefined)&&(globalne_zmienne.gConfig.register!==undefined)&&(globalne_zmienne.gConfig.get!==undefined)){
mw.messages.set({
'StronaSubst-name': 'Strona zbiorcza',
'StronaSubst-description-page': 'Wikibooks:StronicowyParser/StronaSubst',
'StronaSubst-latex': 'Zamiast wzorów, wstaw tekst latexowy, w przeciwnym przypadku jest w formie LaTeX.',
'StronaSubst-mathml': 'Zamiast wzorów latexowych, wstaw je w formie znaczników MathML.',
'StronaSubst-opakuj_kategorie_ze_sortowaniem' : 'W stronach zbiorczych opakowuje kategorie, w postaci ramki, dla każdego artykułu z osobna.',
'StronaSubst-ukrywaj_toc' : "Ukrywa, począwszy od jakiegoś poziomu wszystkich tam spisów treści, na stronach zbiorczych.",
'StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach' : "Włącza dymki, nad linkami, w ładowanych dynamicznie stronach, tworząc je inteligentnymi.",
'StronaSubst-aktualizowanie_nazw_artykulow' : 'Aktualizuje na podstawie strony głównej nazwy tylko artykułów.',
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami' : "Aktualizuje sekcje poszczegónych rozdziałów artykułów ładowanych rozdziałami, domyślnie według sekcji w tych jednostkach.",
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika' : 'Aktualizuje, sekcje artykułów ładowanych rozdziałami, na podstawie strony głównej książki, a nie jego artykułów.',
'StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej' : 'Aktualizuje nagłówki strony głównej podręcznika na stronie zbiorczej.',
'StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule' : 'Aktualizuje, brakujące sekcje rozdziałów ładowanych rozdziałami artykułów, według wpisów na stronie głównej, na stronie zbiorczej.',
'StronaSubst-nie_usuwaj_styli' : 'Nie usuwa styli z nagłówków ładowanych stron.',
'StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst' : 'Rozwijaj szablony oznaczone szablonem SzablonSubst.',
});
gConfig.register('StronaSubst', {name: mw.msg('StronaSubst-name'), descriptionPage: mw.msg('StronaSubst-description-page')}, [
{
name: 'latex',
desc: mw.msg('StronaSubst-latex'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_latex']
},
{
name: 'mathml',
desc: mw.msg('StronaSubst-mathml'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_mathml']
},
{
name: 'opakuj_kategorie_ze_sortowaniem',
desc: mw.msg('StronaSubst-opakuj_kategorie_ze_sortowaniem'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_opakuj_kategorie_ze_sortowaniem']
},
{
name: 'ukrywaj_toc',
desc: mw.msg('StronaSubst-ukrywaj_toc'),
type: 'integer',
deflt: 0,
validation: function(n){ if((n<0)||(n==1)){ throw 'Wartość dotycząca poziomu ukrywania spisów treści jest nieprawidłowa!' }; return n; },
legacy: [window, 'wb_stronasubst_ukrywaj_toc']
},
{
name: 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach',
desc: mw.msg('StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach']
},
{
name: 'aktualizowanie_nazw_artykulow',
desc: mw.msg('StronaSubst-aktualizowanie_nazw_artykulow'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nazw_artykulow']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika']
},
{
name: 'aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej',
desc: mw.msg('StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej']
},
{
name: 'aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule',
desc: mw.msg('StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule']
},
{
name: 'nie_usuwaj_styli',
desc: mw.msg('StronaSubst-nie_usuwaj_styli'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_nie_usuwaj_styli']
},
{
name: 'rozwijaj_szablony_oznaczone_szablonem_szablonsubst',
desc: mw.msg('StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst']
},
]);
stronasubst_latex = (gConfig.get('StronaSubst', 'latex')==true);
stronasubst_mathml = (((gConfig.get('StronaSubst', 'mathml'))&&(!stronasubst_latex))==true);
stronasubst_opakuj_kategorie_ze_sortowaniem = (gConfig.get('StronaSubst', 'opakuj_kategorie_ze_sortowaniem')==true);
stronasubst_ukrywaj_toc = gConfig.get('StronaSubst', 'ukrywaj_toc');
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach = gConfig.get('StronaSubst', 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach');
stronasubst_aktualizowanie_nazw_artykulow = (gConfig.get('StronaSubst', 'aktualizowanie_nazw_artykulow')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami = (gConfig.get('StronaSubst', 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika = (gConfig.get('StronaSubst','aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika')==true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej = (gConfig.get('StronaSubst','aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej')==true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule = (gConfig.get('StronaSubst','aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule')==true);
stronasubst_nie_usuwaj_styli = (gConfig.get('StronaSubst','nie_usuwaj_styli')==true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst = (gConfig.get('StronaSubst','rozwijaj_szablony_oznaczone_szablonem_szablonsubst')==true);
}
//let podglad=document.querySelector('body:not(.action-view)');
//if(podglad){return;}
let stronasubst_tablica_tych_samych=new Array();
let stronasubst_tablica_rozdzialow=new Array();
let stronasubst_tablica_alternatywnych_nazw=new Array();
stronasubst_latex=((stronasubst_latex!==undefined)?stronasubst_latex:false);
stronasubst_mathml=((stronasubst_mathml!==undefined)?stronasubst_mathml:true);
stronasubst_opakuj_kategorie_ze_sortowaniem=((stronasubst_opakuj_kategorie_ze_sortowaniem!==undefined)?stronasubst_opakuj_kategorie_ze_sortowaniem:false);
stronasubst_ukrywaj_toc=parseInt(((stronasubst_ukrywaj_toc!==undefined)?stronasubst_ukrywaj_toc:0));
stronasubst_ukrywaj_toc=((!isNaN(stronasubst_ukrywaj_toc))?stronasubst_ukrywaj_toc:0);
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=((stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach!==undefined)?stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach:true);
stronasubst_aktualizowanie_nazw_artykulow=((stronasubst_aktualizowanie_nazw_artykulow!==undefined)?stronasubst_aktualizowanie_nazw_artykulow:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika:true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=((stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej!==undefined)?stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej:true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=((stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule!==undefined)?stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule:true);
stronasubst_nie_usuwaj_styli=((stronasubst_nie_usuwaj_styli!==undefined)?stronasubst_nie_usuwaj_styli:true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=((stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst!==undefined)?stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst:true);
async function AnalizujDalejSzablonSubst(element_strony,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let rozdzial_ksiazki="rozdział_książki";
let el=$(element_strony).find('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((el!==null)&&(el.length>0)){
for(let i=0;i<el.length;++i){
let element_el=el[i];
let ksiazka=element_el.querySelector("."+rozdzial_ksiazki);
if(ksiazka){
let nazwa_strony=element_el.getAttribute('nazwa_strony');
if(tab_promise2){tab_promise2.push(true);}
CzyStronaSubst(element_el,nazwa_strony,tab_promise2);
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
async function WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let title=data.parse.title;
let wikikod=data.parse.text['*'];
let strona_hash;
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let t=tab_uzyskane[0];
if(t==undefined){
console.log("Nie wykryto znacznika lsth_\d+.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
strona_hash=titles[t];
let selflink=document.createElement('div');
selflink.innerHTML=wikikod;
let czy_selflink=selflink.getElementsByClassName('selflink');
if((czy_selflink!==null)&&(czy_selflink.length==1)){
let elements=tabstrona[strona_hash];
let a=document.createElement('a');/*Tworzenie linku*/
a.setAttribute('href',StronicowyParser.kodowanie.EncodeHtml(title));
a.innerHTML=strona_hash;
let span=document.createElement('span');
span.appendChild(a);
span.setAttribute("class","niw link");/*Dodawanie klasy, by inny skript JS to przeanalizował jako link*/
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo(span);
}
for(let q in elements){
let element=elements[q];
element.innerHTML="";
element.appendChild(span);
$(element).wrap(function(){return "<strong></strong>";});
let przed=document.createTextNode("{{:");
let po=document.createTextNode("}}");
element.insertBefore(przed,element.firstChild);
element.appendChild(po);
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=tab_uzyskane[1].innerHTML;
let elements=tabstrona[strona_hash];
for(let q in elements){
let element=elements[q];
element.innerHTML=wikikod;
StronicowyParser.ZamienLinkiNaLinkiDoStronyAktualnej(element,title,titles);
}
StronicowyParser.AktualizujSpisTresciModuluStrony(elements,tabs,strona_hash,stronasubst_tablica_alternatywnych_nazw,stronasubst_tablica_tych_samych,stronasubst_tablica_rozdzialow,true,stronasubst_latex,stronasubst_mathml)
let strona_start=$(elements[0]).parents(".strona_start");
let rodzic=undefined;
if((strona_start!==null)&&(strona_start.length>0)){
rodzic=strona_start[0];
}
StronicowyParser.IndeksujHeadLine(rodzic);
StronicowyParser.PrzeIndeksujWszystkieTOC(rodzic,true);
for(let q in elements){
let element=elements[q];
async function ElementDalszychObliczen(element,tab_promise2){
await StronicowyParser.muteks.zablokuj(true);
StronicowyParser.PoprawRozdzialyStron(element);
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu(element,tab_promise2);//Funkcja jako gadżet do numerowania rozdziałów.
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element,tab_promise2);
}
if((StronicowyParser.szablony&&StronicowyParser.szablony.LadujSzablon)&&(stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst)){
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(element,title,titles,undefined,tab_promise).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(()=>{
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika(element);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
ElementDalszychObliczen(element,tab_promise2);
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function ToogleTableOfContainer(panel){
let id=panel.target;
let tagname=id.tagName.toUpperCase();
//console.log(czy_klasa,tagname,"TYTAN)";
if(tagname=="BUTTON"){
let czy_klasa_1=$(id).hasClass('sidebar-toc-toggle');
let czy_klasa_2=$(id).hasClass('vector-toc-collapse-button');
if(czy_klasa_1){
$(id).parent().children().last().each((i,element)=>{
let expanded=$(id).attr('aria-expanded');
if(expanded=="false"){
$(element).css('display',"block");
$(element).closest('li').addClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','true');
}else if(expanded=="true"){
$(element).css('display',"none");
$(element).closest('li').removeClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','false');
}
});
}else if(czy_klasa_2){
$(id).parents('#sidebar-toc-label').siblings('ul').each((i,element)=>{
let ukryj=$(element).css('display');
if(ukryj!="none"){
$(element).css('display',"none");
id.innerHTML=" pokaż ";
}else{
$(element).css('display',"block");
id.innerHTML=" ukryj "
}
});
}
}
}
let mutekstoogle=new StronicowyParser.Muteks();
async function ScrollTableOfContainer(){
await mutekstoogle.zablokuj();
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header').first().each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=rect_sticky.height-15;
});
let parser=document.querySelector('#mw-content-text .mw-parser-output');
if(parser){
let rect=parser.getBoundingClientRect();
if(rect.top>=height_sticky){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item').first().addClass('sidebar-toc-list-item-active');
mutekstoogle.odblokuj();
return;
}
}else{
mutekstoogle.odblokuj();
return;
}
var str=$('#mw-content-text .mw-parser-output').find('h1, h2, h3, h4, h5, h6');
if((str!==null)&&(str.length>0)){
var naglowek;
for(i=0;i<str.length;++i){
let element=str[i];
let rect=element.getBoundingClientRect();
if(rect.top>=height_sticky){
let mw_naglowek=element.querySelector('.mw-headline');
if(mw_naglowek){
let id_naglowek=mw_naglowek.getAttribute('id');
let tak=false;
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+id_naglowek){
let display=window.getComputedStyle(element, null).getPropertyValue('display');
if(display!="none"){
tak=true;
}
}
});
if(tak){
naglowek=id_naglowek;
break;
}
}
}
}
if(naglowek){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+naglowek){
$(element).addClass('sidebar-toc-list-item-active');
}
});
}
}
mutekstoogle.odblokuj();
}
async function StronaSubst(element_strony,wikikod,aktualna_strona,tab_promise2){
await StronicowyParser.muteks.zablokuj();
StronicowyParser.NaprawNaglowkiStrony(element_strony,true);
let czy_wikikod=wikikod.match(/^[_\s]*$/g);
let strona_start=$('#mw-content-text .mw-parser-output .strona_start');
function CzyWszystkieNaglowkiWewnatrzStronaStart(){
let pole=$('#mw-content-text .mw-parser-output').find('h1,h2,h3,h4,h5,h6');
for(let i=0;i<pole.length;++i){
let s=strona_start.find(pole[i]);
if((s===null)||(s.length==0)){
return false;
}
}
return true;
}
if(czy_wikikod){
StronicowyParser.muteks.odblokuj();
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyArtykulu)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyArtykulu(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
let czy_numerowac=StronicowyParser.CzyWlaczycSideBarTOC(undefined,true);
if(czy_numerowac){
czy_numerowac=false;
tab_promise.push(true);
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: StronicowyParser.pageinfo.fullname,
text: '{{#invoke:StronicowyParser|CzyStronęNumerować|'+StronicowyParser.pageinfo.fullname+'}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
let wikikod=data.expandtemplates.wikitext;
let czy_wikikod=/^[_\s]*$/g.test(wikikod);
if(!czy_wikikod){
czy_numerowac=true;
}
tab_promise.pop();
}).catch(()=>{tab_promise.pop();});
}
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
let tab_promise=new Array(true);
StronicowyParser.LimitTOC(czy_numerowac,stronasubst_ukrywaj_toc);
StronicowyParser.szablony.LadujSzablon(null,null,null,czy_numerowac,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true)
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],czy_numerowac,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(czy_numerowac)){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
return;
}
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(null,null,null,undefined,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async (result) => {
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
await StronicowyParser.CzekajNaZakaczenie(tab_promise).then(async (result) => {}).catch(()=>{});
await StronicowyParser.muteks.zablokuj();
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
let rozdzial_ksiazki="rozdział_książki";
let tagclass=element_strony.getElementsByClassName(rozdzial_ksiazki);
if(tagclass===null){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return null;
}
let liczba_elementow=tagclass.length;
if(liczba_elementow==0){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return null;
}
let titles=new Array();
let tabstrona=new Array();
let tabs=new Array();
let tab_section=new Array();
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element_strony,tab_promise2);
}
let tab_hn=new Array();
async function edit_action(numer,strona,hn,link_strona,czy_link_nie_w_naglowku){
await StronicowyParser.muteks.zablokuj();
let linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection===null){
let editsection=document.createElement('span');
editsection.classList.add('mw-editsection');
let bracket_poczatek=document.createElement('span');
bracket_poczatek.classList.add('mw-editsection-bracket')
bracket_poczatek.innerHTML="[";
let a=document.createElement('a');
a.setAttribute('href',"/w/index.php?title="+StronicowyParser.kodowanie.EncodeHtml(strona,false,true)+"&action=edit"+((numer>0)?("§ion="+numer):""));
a.setAttribute('title',"Edytuj artykuł: "+link_strona);
a.innerHTML="edytuj";
let bracket_koniec=document.createElement('span');
bracket_koniec.classList.add('mw-editsection-bracket')
bracket_koniec.innerHTML="]";
editsection.appendChild(bracket_poczatek);
editsection.appendChild(a)
editsection.appendChild(bracket_koniec);
hn.appendChild(editsection);
}
linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection!==null){
let mw_editsection_bracket=linkstrony_editsection.querySelector('a');
if(mw_editsection_bracket!==null){
if(czy_link_nie_w_naglowku){
let a=document.createElement('a');
a.innerHTML="artykuł";
a.setAttribute("href",StronicowyParser.kodowanie.EncodeHtml("/wiki/"+StronicowyParser.kodowanie.EncodeHtml(link_strona,false,true)));
a.setAttribute("title","Zobacz artykuł: "+link_strona);
let span=document.createElement('span');
span.innerHTML="| ";
span.setAttribute('class',"mw-editsection-bracket")
let czy_ma=$(mw_editsection_bracket).parent().hasClass('link');
if(czy_ma){
let rodzic_mw_editsection_bracket=mw_editsection_bracket.parentNode;
let span2=linkstrony_editsection.insertBefore(span, rodzic_mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}else{
let span2=linkstrony_editsection.insertBefore(span, mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}
}
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(linkstrony_editsection).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
}
for (let i=0;i<liczba_elementow;++i){
let tagclassname=tagclass[i];
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find("."+rozdzial_ksiazki);
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==tagclassname){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
if(tagclassname.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let class_element=tagclassname.getElementsByClassName('strona_subst');
let element;
if((class_element!==null)&&(class_element.length==1)){
element=class_element[0];
if(element.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let czy_link_nie_w_naglowku;
let strona_headline=tagclassname.getElementsByClassName('mw-headline');
let link_strona;
if((strona_headline!==null)&&(strona_headline.length==1)){
strona_a=strona_headline[0].getElementsByTagName('a');
if((strona_a!==null)&&(strona_a.length==1)){
link_strona=StronicowyParser.kodowanie.DecodeHtml(strona_a[0].getAttribute('href'));
if(link_strona!==null){
let re=/\/wiki\//g;
if(re.test(link_strona)){
link_strona=link_strona.substring(6,link_strona.length);
czy_link_nie_w_naglowku=false;
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}
}else{
link_strona=StronicowyParser.style.UsunStyle(element.innerHTML);
czy_link_nie_w_naglowku=true;
}
}
let re = /^[_\s]*$/g;
let dopasowanie = re.test(link_strona);
if(dopasowanie){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return;
};
link_strona=link_strona.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ").replace(/&/g,"&").replace(/ /g," ");
let hash=link_strona.replace(/^([^#]*)#(.*)$/,"$2").replace(/&/g,"&").replace(/ /g,"_");
/**/
let hn=strona_headline[0].parentNode;
if((hn===null)||(!hn.tagName.toUpperCase().match(/^H\d+$/g))){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
tab_section[i]=new Array(hn,link_strona,czy_link_nie_w_naglowku);
let strona=link_strona.match(/^[^#]*/g).toString();
async function PraceIteracyjne(tab_promise2){
await StronicowyParser.muteks.zablokuj();
if(/#/g.test(link_strona)){
let hash=link_strona.replace(/^([^#]*)#(.*)$/g,"$2");
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let numer=hn.innerHTML;
numer=parseInt(numer);
if(isNaN(numer)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return ;}
let tab_c=tab_section[c];
edit_action(numer,tab_c[1].match(/^[^#]*/g).toString(),tab_c[0],tab_c[1],tab_c[2]);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami){
if(!stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}else{
let uzupelniaj_sekcje_artykulow;
if(stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule){
uzupelniaj_sekcje_artykulow="tak";
}else{
uzupelniaj_sekcje_artykulow="";
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+link_strona+"|analiza=tak|uzupełniaj sekcje artykułów="+uzupelniaj_sekcje_artykulow+"|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
let a=headline.getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
a[0].setAttribute('title',stare);
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
}else{
edit_action(0,strona,hn,link_strona,czy_link_nie_w_naglowku);
if(stronasubst_aktualizowanie_nazw_artykulow){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+strona+"|analiza=tak|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceIteracyjne(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
/**/
tabs[i]=link_strona;
let czy=false;
for(let d in titles){
if(titles[d]==link_strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=link_strona;
}
if(tabstrona[link_strona]==null){
tabstrona[link_strona]=new Array();
}
let tab=tabstrona[link_strona];
let tablen=tab.length;
tabstrona[link_strona][tablen]=element;
}
async function PraceNaglowki(tab_promise2){
await StronicowyParser.muteks.zablokuj();
let promise;
if(element_strony==document){
let namespace=StronicowyParser.pageinfo.namespace;
let strona_podrecznika=((namespace!="")?(namespace+":"):"")+StronicowyParser.pageinfo.bookname;
promise=Promise.resolve(strona_podrecznika);
}else{
let zaan=$(element_strony).parents('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((zaan!==null)&&(zaan.length>0)){
let strona=zaan[0].getAttribute('nazwa_strony');
if(strona){
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](strona);
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}
if(tab_promise2){tab_promise2.push(true);}
promise.then(async (strona_podrecznika)=>{
await StronicowyParser.muteks.zablokuj();
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find(".klasa_nagłówka");
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)){
let g=0;
let tab_naglowka=new Array();
let tab_hn=new Array();
for(let z=0;z<klasa_naglowka.length;++z){
let pojedyncza_klasa_naglowka=klasa_naglowka[z];
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==pojedyncza_klasa_naglowka){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
let dana_klasa_naglowka=pojedyncza_klasa_naglowka.querySelector('.mw-headline');
if(dana_klasa_naglowka!==null){
if((dana_klasa_naglowka.parentNode!==null)&&(dana_klasa_naglowka.parentNode.tagName.toUpperCase().match(/^[Hh]\d+$/g))
&&(dana_klasa_naglowka.parentNode.parentNode!=null)&&(dana_klasa_naglowka.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&($(dana_klasa_naglowka.parentNode.parentNode).hasClass('klasa_nagłówka'))){
let naglowek=StronicowyParser.style.UsunStyle(dana_klasa_naglowka.innerHTML).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_").replace(/&/g,"&").replace(/ /g,"_");
let ww=1;
for(let x=0;x<tab_naglowka.length;++x){
if(tab_naglowka[x]==naglowek){
++ww;
}
}
naglowek=naglowek+((ww>1)?ww:"");
tab_naglowka[g]=naglowek;
tab_hn[g]=dana_klasa_naglowka.parentNode;
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, na stronie głównej podręcznika, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let nazwa_podrecznika=strona_podrecznika.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
let naglowek_sekcji_podrecznika=tab_naglowka[c].replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
edit_action(c+1,nazwa_podrecznika,tab_hn[c],nazwa_podrecznika+"#"+naglowek_sekcji_podrecznika,true);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();return;}
let headline=tab_hn[c].querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
++g;
}
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceNaglowki(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
function RozwazajNaglowki(){
let toc_fun=new StronicowyParser.ListaNodeTOC();
if((toc_fun.toc!==null)&&(toc_fun.toc.length>0)){
for(let w=0;w<toc_fun.toc.length;++w){
let czy_side_bar_toc=toc_fun.CzySideBarToc(toc_fun.toc[w]);
let ile_jest=0;
let li=toc_fun.toc[w].getElementsByTagName('li');
if((li!==null)&&(li.length>0)){
for(let dd=0;dd<li.length;++dd){
let element_li=li[dd];
let tocnumber;let toctext_wartosc;
if(czy_side_bar_toc){
tocnumber=element_li.querySelector('.sidebar-toc-numb');
if(!tocnumber){continue;}
toctext_wartosc=element_li.querySelector('.sidebar-toc-text').innerHTML.replace(new RegExp(StronicowyParser.wzor.BezZnakowSpecjalnych(tocnumber.outerHTML),"g"),"");
}else{
tocnumber=element_li.querySelector('.tocnumber');
toctext_wartosc=element_li.querySelector('.toctext').innerHTML;
}
if((tocnumber!==null)&&(toctext_wartosc!==null)){
let czy_jest=undefined;
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)&&(klasa_naglowka[ile_jest]!=null)){
let element_klasa_naglowka=klasa_naglowka[ile_jest];
let headline=element_klasa_naglowka.querySelector('.mw-headline');
if((headline!==null)
&&(headline.parentNode!==null)
&&(headline.parentNode.tagName.toUpperCase().match(/^H\d+$/))
&&(headline.parentNode.parentNode!==null)
&&(headline.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&(headline.parentNode.parentNode===element_klasa_naglowka)
){
let element_a;
if(czy_side_bar_toc){
element_a=tocnumber.parentNode.parentNode;
}else{
element_a=tocnumber.parentNode;
}
if(element_a.tagName.toUpperCase()=="A"){
let href=StronicowyParser.kodowanie.DecodeHtml(element_a.getAttribute('href'));
if(href!==null){
href=href.replace(/^#/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
let id_headline=headline.getAttribute('id');
if(id_headline!==null){
id_headline=id_headline.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
if(href!=id_headline){czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
if(czy_jest===undefined){ile_jest+=1;}
if((czy_jest===undefined)||(!czy_jest)){
let element_toctext=StronicowyParser.style.UsunStyle(toctext_wartosc).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ");
if(stronasubst_tablica_rozdzialow[element_toctext]==null){
stronasubst_tablica_rozdzialow[element_toctext]=new Array(tocnumber);
}else{
stronasubst_tablica_rozdzialow[element_toctext].push(tocnumber);
}
}
}
}
}
}
}
}
StronicowyParser.LimitTOC(true,stronasubst_ukrywaj_toc);
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],true,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(StronicowyParser.CzyWlaczycSideBarTOC(undefined,true))){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
RozwazajNaglowki();
if(stronasubst_mathml){
$("div.toc ul > li > a > span.toctext").toggleClass("mathml");
$("div.toc_spis ul > li > a > span.toctext").toggleClass("mathml");
$("div.mw-table-of-contents-container > nav.sidebar-toc ul > li > a > div.sidebar-toc-text").toggleClass("mathml");
}
function Strona(strona){
let strona_re=StronicowyParser.wzor.BezZnakowSpecjalnych(strona);
let re=new RegExp("^\\s*"+strona_re+"\\s*#","g");
return re;
}
function CzyArtykulyZNaglowkamiDlaStrony(re){
for(let s in titles){
let czy_hash=titles[s].match(re);
if(czy_hash){
return true;
}
}
return false;
}
let catlinks_fun=new StronicowyParser.LinkiKategorii();
await catlinks_fun.PobierzKategorieStrony();
for ( let t in titles ) {
let strona=titles[t].match(/^[^#]*/g).toString();
let szablon_artykulu;
let re_strona=Strona(strona);
let czy_naglowki=CzyArtykulyZNaglowkamiDlaStrony(re_strona);
if(!czy_naglowki){
szablon_artykulu="{{:"+strona+"}}";
}else{
/*---------------------------------*/
let rozdzial1=null;
let re=/^([^#]*)#(.*)$/g;
if(re.test(titles[t])){
rozdzial1=titles[t].replace(re,"$2");
rozdzial1=rozdzial1.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial1="";}
let rozdzial2=null;
let tit=titles[parseInt(t)+1];
if( tit && re.test(tit) && re_strona.test(tit)){
rozdzial2=tit.replace(re,"$2");
rozdzial2=rozdzial2.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial2="";}
/*---------------------------*/
szablon_artykulu="{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|TekstRozdziałuStrony|"+strona+"|"+rozdzial1+"|"+rozdzial2+"}}}}";
}
szablon_artykulu="{{PrzytnijTekst|"+szablon_artykulu+"}}";
if(stronasubst_opakuj_kategorie_ze_sortowaniem){
szablon_artykulu="{{OpakujKategorieZeSortowaniem|"+szablon_artykulu+"}}"
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text|categories',
title: strona,
text: "<div class=\"hn hn_"+t+"\">\n"+szablon_artykulu+"\n</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
catlinks_fun.AnalizaKategorii(data).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);}
WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2).then((result) => {}).catch((error) => {});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function CzyszczenieZZdarzeńTableOfContent(){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
}
}
CzyszczenieZZdarzeńTableOfContent();
let tab_promise2=new StronicowyParser.SugerowaneObiekty();
async function CzyStronaSubst(element,aktualna_strona,tab_promise2){
if(tab_promise2){tab_promise2.push(true);}
await StronicowyParser.muteks.zablokuj();
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: aktualna_strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.expandtemplates.wikitext;
if((wikikod!==null)&&(aktualna_strona!==null)){
if(tab_promise2){tab_promise2.push(true);}
StronaSubst(element,wikikod,aktualna_strona,tab_promise2).then((result) => {}).catch((error) => {});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
let aktualna_strona=StronicowyParser.pageinfo.fullname;
if(tab_promise2){tab_promise2.push(true,true);}
CzyStronaSubst(document,aktualna_strona,tab_promise2);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
function Progress(){
var c=document.createElement('div');
c.setAttribute("id","pasek_postępu")
c.setAttribute('style','margin-top:-2px;margin-left:-2px;position:absolute;width:250px;height:80px;border:1px solid black;box-sizing:border-box;padding:5px;background-color:white;display:flex;flex-direction:column;box-sizing:border-box;');
var label=document.createElement('label');
label.setAttribute('for','file1');
label.innerHTML="<span style=\"color:blue;\">Ukończone wątki: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_0=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file1')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;');
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_1=c.appendChild(progress);
var label=document.createElement('label');
label.setAttribute('for','file2');
label.innerHTML="<span style=\"color:blue;\">Zwolnione blokaty: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_1=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file2')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;')
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_2=c.appendChild(progress);
function PozycjaXY(){
c.style.top=(window.scrollY+document.documentElement.clientHeight-parseFloat(c.style.height))+"px";
c.style.left=(window.scrollX+document.documentElement.clientWidth-parseFloat(c.style.width))+"px";
}
document.querySelector('body').appendChild(c);
PozycjaXY();
$(window).on('scroll',PozycjaXY);
$(window).on('resize',PozycjaXY);
return new Array(element_body_progress_1,element_body_progress_2,span_0,span_1);
}
var arr;
function __FUNKCJA(arr){
arr[0].setAttribute("value","0");
arr[1].setAttribute("value","0");
let dodatnie_0=tab_promise2.lengthPlus;
let ujemne_0=tab_promise2.lengthMinus;
let dodatnie_1=StronicowyParser.muteks.LiczbaBlokatPlus;
let ujemne_1=StronicowyParser.muteks.LiczbaBlokatMinus;
let postep_0=((dodatnie_0>0)?((ujemne_0/dodatnie_0)*100):0);
let postep_1=((dodatnie_1>0)?((ujemne_1/dodatnie_1)*100):0);
arr[0].setAttribute("value",postep_0);
arr[1].setAttribute("value",postep_1);
arr[2].innerHTML=(parseInt(postep_0*1000)/1000)+"%";
arr[3].innerHTML=(parseInt(postep_1*1000)/1000)+"%";
}
StronicowyParser.CzekajNaZakaczenie(tab_promise2,null,StronicowyParser.muteks,(tab_promise)=>{arr=Progress();__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);setTimeout(function(){let node_postep=document.getElementById('pasek_postępu');$(node_postep).remove();},2000);}).then(async (result) => {}).catch(()=>{});
};
StronicowyParser.WyswietlStronyKsiazki().then((result) => {}).catch((error) => {});
});
syeqhk5zhe9a49gdxknf34nk4qszy1r
437324
437323
2022-08-09T17:23:32Z
Persino
2851
javascript
text/javascript
mw.loader.using('ext.gadget.gConfig', function(){
let globalne_zmienne=this;
StronicowyParser.WyswietlStronyKsiazki=async function(){
await StronicowyParser.muteks.zablokuj();
let stronasubst_latex=undefined;
let stronasubst_mathml=undefined;
let stronasubst_opakuj_kategorie_ze_sortowaniem=undefined;
let stronasubst_ukrywaj_toc=undefined;
let stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=undefined;
let stronasubst_aktualizowanie_nazw_artykulow=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=undefined;
let stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=undefined;
let stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=undefined;
let stronasubst_nie_usuwaj_styli=undefined;
let stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=undefined;
if((globalne_zmienne.gConfig!==undefined)&&(globalne_zmienne.gConfig.register!==undefined)&&(globalne_zmienne.gConfig.get!==undefined)){
mw.messages.set({
'StronaSubst-name': 'Strona zbiorcza',
'StronaSubst-description-page': 'Wikibooks:StronicowyParser/StronaSubst',
'StronaSubst-latex': 'Zamiast wzorów, wstaw tekst latexowy, w przeciwnym przypadku jest w formie LaTeX.',
'StronaSubst-mathml': 'Zamiast wzorów latexowych, wstaw je w formie znaczników MathML.',
'StronaSubst-opakuj_kategorie_ze_sortowaniem' : 'W stronach zbiorczych opakowuje kategorie, w postaci ramki, dla każdego artykułu z osobna.',
'StronaSubst-ukrywaj_toc' : "Ukrywa, począwszy od jakiegoś poziomu wszystkich tam spisów treści, na stronach zbiorczych.",
'StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach' : "Włącza dymki, nad linkami, w ładowanych dynamicznie stronach, tworząc je inteligentnymi.",
'StronaSubst-aktualizowanie_nazw_artykulow' : 'Aktualizuje na podstawie strony głównej nazwy tylko artykułów.',
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami' : "Aktualizuje sekcje poszczegónych rozdziałów artykułów ładowanych rozdziałami, domyślnie według sekcji w tych jednostkach.",
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika' : 'Aktualizuje, sekcje artykułów ładowanych rozdziałami, na podstawie strony głównej książki, a nie jego artykułów.',
'StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej' : 'Aktualizuje nagłówki strony głównej podręcznika na stronie zbiorczej.',
'StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule' : 'Aktualizuje, brakujące sekcje rozdziałów ładowanych rozdziałami artykułów, według wpisów na stronie głównej, na stronie zbiorczej.',
'StronaSubst-nie_usuwaj_styli' : 'Nie usuwa styli z nagłówków ładowanych stron.',
'StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst' : 'Rozwijaj szablony oznaczone szablonem SzablonSubst.',
});
gConfig.register('StronaSubst', {name: mw.msg('StronaSubst-name'), descriptionPage: mw.msg('StronaSubst-description-page')}, [
{
name: 'latex',
desc: mw.msg('StronaSubst-latex'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_latex']
},
{
name: 'mathml',
desc: mw.msg('StronaSubst-mathml'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_mathml']
},
{
name: 'opakuj_kategorie_ze_sortowaniem',
desc: mw.msg('StronaSubst-opakuj_kategorie_ze_sortowaniem'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_opakuj_kategorie_ze_sortowaniem']
},
{
name: 'ukrywaj_toc',
desc: mw.msg('StronaSubst-ukrywaj_toc'),
type: 'integer',
deflt: 0,
validation: function(n){ if((n<0)||(n==1)){ throw 'Wartość dotycząca poziomu ukrywania spisów treści jest nieprawidłowa!' }; return n; },
legacy: [window, 'wb_stronasubst_ukrywaj_toc']
},
{
name: 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach',
desc: mw.msg('StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach']
},
{
name: 'aktualizowanie_nazw_artykulow',
desc: mw.msg('StronaSubst-aktualizowanie_nazw_artykulow'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nazw_artykulow']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika']
},
{
name: 'aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej',
desc: mw.msg('StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej']
},
{
name: 'aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule',
desc: mw.msg('StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule']
},
{
name: 'nie_usuwaj_styli',
desc: mw.msg('StronaSubst-nie_usuwaj_styli'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_nie_usuwaj_styli']
},
{
name: 'rozwijaj_szablony_oznaczone_szablonem_szablonsubst',
desc: mw.msg('StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst']
},
]);
stronasubst_latex = (gConfig.get('StronaSubst', 'latex')==true);
stronasubst_mathml = (((gConfig.get('StronaSubst', 'mathml'))&&(!stronasubst_latex))==true);
stronasubst_opakuj_kategorie_ze_sortowaniem = (gConfig.get('StronaSubst', 'opakuj_kategorie_ze_sortowaniem')==true);
stronasubst_ukrywaj_toc = gConfig.get('StronaSubst', 'ukrywaj_toc');
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach = gConfig.get('StronaSubst', 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach');
stronasubst_aktualizowanie_nazw_artykulow = (gConfig.get('StronaSubst', 'aktualizowanie_nazw_artykulow')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami = (gConfig.get('StronaSubst', 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika = (gConfig.get('StronaSubst','aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika')==true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej = (gConfig.get('StronaSubst','aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej')==true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule = (gConfig.get('StronaSubst','aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule')==true);
stronasubst_nie_usuwaj_styli = (gConfig.get('StronaSubst','nie_usuwaj_styli')==true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst = (gConfig.get('StronaSubst','rozwijaj_szablony_oznaczone_szablonem_szablonsubst')==true);
}
//let podglad=document.querySelector('body:not(.action-view)');
//if(podglad){return;}
let stronasubst_tablica_tych_samych=new Array();
let stronasubst_tablica_rozdzialow=new Array();
let stronasubst_tablica_alternatywnych_nazw=new Array();
stronasubst_latex=((stronasubst_latex!==undefined)?stronasubst_latex:false);
stronasubst_mathml=((stronasubst_mathml!==undefined)?stronasubst_mathml:true);
stronasubst_opakuj_kategorie_ze_sortowaniem=((stronasubst_opakuj_kategorie_ze_sortowaniem!==undefined)?stronasubst_opakuj_kategorie_ze_sortowaniem:false);
stronasubst_ukrywaj_toc=parseInt(((stronasubst_ukrywaj_toc!==undefined)?stronasubst_ukrywaj_toc:0));
stronasubst_ukrywaj_toc=((!isNaN(stronasubst_ukrywaj_toc))?stronasubst_ukrywaj_toc:0);
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=((stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach!==undefined)?stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach:true);
stronasubst_aktualizowanie_nazw_artykulow=((stronasubst_aktualizowanie_nazw_artykulow!==undefined)?stronasubst_aktualizowanie_nazw_artykulow:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika:true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=((stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej!==undefined)?stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej:true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=((stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule!==undefined)?stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule:true);
stronasubst_nie_usuwaj_styli=((stronasubst_nie_usuwaj_styli!==undefined)?stronasubst_nie_usuwaj_styli:true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=((stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst!==undefined)?stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst:true);
async function AnalizujDalejSzablonSubst(element_strony,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let rozdzial_ksiazki="rozdział_książki";
let el=$(element_strony).find('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((el!==null)&&(el.length>0)){
for(let i=0;i<el.length;++i){
let element_el=el[i];
let ksiazka=element_el.querySelector("."+rozdzial_ksiazki);
if(ksiazka){
let nazwa_strony=element_el.getAttribute('nazwa_strony');
if(tab_promise2){tab_promise2.push(true);}
CzyStronaSubst(element_el,nazwa_strony,tab_promise2);
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
async function WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let title=data.parse.title;
let wikikod=data.parse.text['*'];
let strona_hash;
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let t=tab_uzyskane[0];
if(t==undefined){
console.log("Nie wykryto znacznika lsth_\d+.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
strona_hash=titles[t];
let selflink=document.createElement('div');
selflink.innerHTML=wikikod;
let czy_selflink=selflink.getElementsByClassName('selflink');
if((czy_selflink!==null)&&(czy_selflink.length==1)){
let elements=tabstrona[strona_hash];
let a=document.createElement('a');/*Tworzenie linku*/
a.setAttribute('href',StronicowyParser.kodowanie.EncodeHtml(title));
a.innerHTML=strona_hash;
let span=document.createElement('span');
span.appendChild(a);
span.setAttribute("class","niw link");/*Dodawanie klasy, by inny skript JS to przeanalizował jako link*/
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo(span);
}
for(let q in elements){
let element=elements[q];
element.innerHTML="";
element.appendChild(span);
$(element).wrap(function(){return "<strong></strong>";});
let przed=document.createTextNode("{{:");
let po=document.createTextNode("}}");
element.insertBefore(przed,element.firstChild);
element.appendChild(po);
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=tab_uzyskane[1].innerHTML;
let elements=tabstrona[strona_hash];
for(let q in elements){
let element=elements[q];
element.innerHTML=wikikod;
StronicowyParser.ZamienLinkiNaLinkiDoStronyAktualnej(element,title,titles);
}
StronicowyParser.AktualizujSpisTresciModuluStrony(elements,tabs,strona_hash,stronasubst_tablica_alternatywnych_nazw,stronasubst_tablica_tych_samych,stronasubst_tablica_rozdzialow,true,stronasubst_latex,stronasubst_mathml)
let strona_start=$(elements[0]).parents(".strona_start");
let rodzic=undefined;
if((strona_start!==null)&&(strona_start.length>0)){
rodzic=strona_start[0];
}
StronicowyParser.IndeksujHeadLine(rodzic);
StronicowyParser.PrzeIndeksujWszystkieTOC(rodzic,true);
for(let q in elements){
let element=elements[q];
async function ElementDalszychObliczen(element,tab_promise2){
await StronicowyParser.muteks.zablokuj(true);
StronicowyParser.PoprawRozdzialyStron(element);
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu(element,tab_promise2);//Funkcja jako gadżet do numerowania rozdziałów.
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element,tab_promise2);
}
if((StronicowyParser.szablony&&StronicowyParser.szablony.LadujSzablon)&&(stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst)){
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(element,title,titles,undefined,tab_promise).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(()=>{
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika(element);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
ElementDalszychObliczen(element,tab_promise2);
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function ToogleTableOfContainer(panel){
let id=panel.target;
let tagname=id.tagName.toUpperCase();
//console.log(czy_klasa,tagname,"TYTAN)";
if(tagname=="BUTTON"){
let czy_klasa_1=$(id).hasClass('sidebar-toc-toggle');
let czy_klasa_2=$(id).hasClass('vector-toc-collapse-button');
if(czy_klasa_1){
$(id).parent().children().last().each((i,element)=>{
let expanded=$(id).attr('aria-expanded');
if(expanded=="false"){
$(element).css('display',"block");
$(element).closest('li').addClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','true');
}else if(expanded=="true"){
$(element).css('display',"none");
$(element).closest('li').removeClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','false');
}
});
}else if(czy_klasa_2){
$(id).parents('#sidebar-toc-label').siblings('ul').each((i,element)=>{
let ukryj=$(element).css('display');
if(ukryj!="none"){
$(element).css('display',"none");
id.innerHTML=" pokaż ";
}else{
$(element).css('display',"block");
id.innerHTML=" ukryj "
}
});
}
}
}
let mutekstoogle=new StronicowyParser.Muteks();
async function ScrollTableOfContainer(){
await mutekstoogle.zablokuj();
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header').first().each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=rect_sticky.height-15;
});
let parser=document.querySelector('#mw-content-text .mw-parser-output');
if(parser){
let rect=parser.getBoundingClientRect();
if(rect.top>=height_sticky){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item').first().addClass('sidebar-toc-list-item-active');
mutekstoogle.odblokuj();
return;
}
}else{
mutekstoogle.odblokuj();
return;
}
var str=$('#mw-content-text .mw-parser-output').find('h1, h2, h3, h4, h5, h6');
if((str!==null)&&(str.length>0)){
var naglowek;
for(i=0;i<str.length;++i){
let element=str[i];
let rect=element.getBoundingClientRect();
if(rect.top>=height_sticky){
let mw_naglowek=element.querySelector('.mw-headline');
if(mw_naglowek){
let id_naglowek=mw_naglowek.getAttribute('id');
let tak=false;
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+id_naglowek){
let display=window.getComputedStyle(element, null).getPropertyValue('display');
if(display!="none"){
tak=true;
}
}
});
if(tak){
naglowek=id_naglowek;
break;
}
}
}
}
if(naglowek){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+naglowek){
$(element).addClass('sidebar-toc-list-item-active');
}
});
}
}
mutekstoogle.odblokuj();
}
async function StronaSubst(element_strony,wikikod,aktualna_strona,tab_promise2){
await StronicowyParser.muteks.zablokuj();
StronicowyParser.NaprawNaglowkiStrony(element_strony,true);
let czy_wikikod=wikikod.match(/^[_\s]*$/g);
let strona_start=$('#mw-content-text .mw-parser-output .strona_start');
function CzyWszystkieNaglowkiWewnatrzStronaStart(){
let pole=$('#mw-content-text .mw-parser-output').find('h1,h2,h3,h4,h5,h6');
for(let i=0;i<pole.length;++i){
let s=strona_start.find(pole[i]);
if((s===null)||(s.length==0)){
return false;
}
}
return true;
}
if(czy_wikikod){
StronicowyParser.muteks.odblokuj();
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyArtykulu)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyArtykulu(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
let czy_numerowac=StronicowyParser.CzyWlaczycSideBarTOC(undefined,true);
if(czy_numerowac){
czy_numerowac=false;
tab_promise.push(true);
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: StronicowyParser.pageinfo.fullname,
text: '{{#invoke:StronicowyParser|CzyStronęNumerować|'+StronicowyParser.pageinfo.fullname+'}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
let wikikod=data.expandtemplates.wikitext;
let czy_wikikod=/^[_\s]*$/g.test(wikikod);
if(!czy_wikikod){
czy_numerowac=true;
}
tab_promise.pop();
}).catch(()=>{tab_promise.pop();});
}
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
let tab_promise=new Array(true);
StronicowyParser.LimitTOC(czy_numerowac,stronasubst_ukrywaj_toc);
StronicowyParser.szablony.LadujSzablon(null,null,null,czy_numerowac,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true)
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],czy_numerowac,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(czy_numerowac)){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
return;
}
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(null,null,null,undefined,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async (result) => {
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
await StronicowyParser.CzekajNaZakaczenie(tab_promise).then(async (result) => {}).catch(()=>{});
await StronicowyParser.muteks.zablokuj();
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
let rozdzial_ksiazki="rozdział_książki";
let tagclass=element_strony.getElementsByClassName(rozdzial_ksiazki);
if(tagclass===null){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return null;
}
let liczba_elementow=tagclass.length;
if(liczba_elementow==0){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return null;
}
let titles=new Array();
let tabstrona=new Array();
let tabs=new Array();
let tab_section=new Array();
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element_strony,tab_promise2);
}
let tab_hn=new Array();
async function edit_action(numer,strona,hn,link_strona,czy_link_nie_w_naglowku){
await StronicowyParser.muteks.zablokuj();
let linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection===null){
let editsection=document.createElement('span');
editsection.classList.add('mw-editsection');
let bracket_poczatek=document.createElement('span');
bracket_poczatek.classList.add('mw-editsection-bracket')
bracket_poczatek.innerHTML="[";
let a=document.createElement('a');
a.setAttribute('href',"/w/index.php?title="+StronicowyParser.kodowanie.EncodeHtml(strona,false,true)+"&action=edit"+((numer>0)?("§ion="+numer):""));
a.setAttribute('title',"Edytuj artykuł: "+link_strona);
a.innerHTML="edytuj";
let bracket_koniec=document.createElement('span');
bracket_koniec.classList.add('mw-editsection-bracket')
bracket_koniec.innerHTML="]";
editsection.appendChild(bracket_poczatek);
editsection.appendChild(a)
editsection.appendChild(bracket_koniec);
hn.appendChild(editsection);
}
linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection!==null){
let mw_editsection_bracket=linkstrony_editsection.querySelector('a');
if(mw_editsection_bracket!==null){
if(czy_link_nie_w_naglowku){
let a=document.createElement('a');
a.innerHTML="artykuł";
a.setAttribute("href",StronicowyParser.kodowanie.EncodeHtml("/wiki/"+StronicowyParser.kodowanie.EncodeHtml(link_strona,false,true)));
a.setAttribute("title","Zobacz artykuł: "+link_strona);
let span=document.createElement('span');
span.innerHTML="| ";
span.setAttribute('class',"mw-editsection-bracket")
let czy_ma=$(mw_editsection_bracket).parent().hasClass('link');
if(czy_ma){
let rodzic_mw_editsection_bracket=mw_editsection_bracket.parentNode;
let span2=linkstrony_editsection.insertBefore(span, rodzic_mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}else{
let span2=linkstrony_editsection.insertBefore(span, mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}
}
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(linkstrony_editsection).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
}
for (let i=0;i<liczba_elementow;++i){
let tagclassname=tagclass[i];
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find("."+rozdzial_ksiazki);
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==tagclassname){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
if(tagclassname.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let class_element=tagclassname.getElementsByClassName('strona_subst');
let element;
if((class_element!==null)&&(class_element.length==1)){
element=class_element[0];
if(element.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let czy_link_nie_w_naglowku;
let strona_headline=tagclassname.getElementsByClassName('mw-headline');
let link_strona;
if((strona_headline!==null)&&(strona_headline.length==1)){
strona_a=strona_headline[0].getElementsByTagName('a');
if((strona_a!==null)&&(strona_a.length==1)){
link_strona=StronicowyParser.kodowanie.DecodeHtml(strona_a[0].getAttribute('href'));
if(link_strona!==null){
let re=/\/wiki\//g;
if(re.test(link_strona)){
link_strona=link_strona.substring(6,link_strona.length);
czy_link_nie_w_naglowku=false;
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}
}else{
link_strona=StronicowyParser.style.UsunStyle(element.innerHTML);
czy_link_nie_w_naglowku=true;
}
}
let re = /^[_\s]*$/g;
let dopasowanie = re.test(link_strona);
if(dopasowanie){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return;
};
link_strona=link_strona.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ").replace(/&/g,"&").replace(/ /g," ");
let hash=link_strona.replace(/^([^#]*)#(.*)$/,"$2").replace(/&/g,"&").replace(/ /g,"_");
/**/
let hn=strona_headline[0].parentNode;
if((hn===null)||(!hn.tagName.toUpperCase().match(/^H\d+$/g))){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
tab_section[i]=new Array(hn,link_strona,czy_link_nie_w_naglowku);
let strona=link_strona.match(/^[^#]*/g).toString();
async function PraceIteracyjne(tab_promise2){
await StronicowyParser.muteks.zablokuj();
if(/#/g.test(link_strona)){
let hash=link_strona.replace(/^([^#]*)#(.*)$/g,"$2");
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let numer=hn.innerHTML;
numer=parseInt(numer);
if(isNaN(numer)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return ;}
let tab_c=tab_section[c];
edit_action(numer,tab_c[1].match(/^[^#]*/g).toString(),tab_c[0],tab_c[1],tab_c[2]);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami){
if(!stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}else{
let uzupelniaj_sekcje_artykulow;
if(stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule){
uzupelniaj_sekcje_artykulow="tak";
}else{
uzupelniaj_sekcje_artykulow="";
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+link_strona+"|analiza=tak|uzupełniaj sekcje artykułów="+uzupelniaj_sekcje_artykulow+"|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
let a=headline.getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
a[0].setAttribute('title',stare);
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
}else{
edit_action(0,strona,hn,link_strona,czy_link_nie_w_naglowku);
if(stronasubst_aktualizowanie_nazw_artykulow){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+strona+"|analiza=tak|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceIteracyjne(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
/**/
tabs[i]=link_strona;
let czy=false;
for(let d in titles){
if(titles[d]==link_strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=link_strona;
}
if(tabstrona[link_strona]==null){
tabstrona[link_strona]=new Array();
}
let tab=tabstrona[link_strona];
let tablen=tab.length;
tabstrona[link_strona][tablen]=element;
}
async function PraceNaglowki(tab_promise2){
await StronicowyParser.muteks.zablokuj();
let promise;
if(element_strony==document){
let namespace=StronicowyParser.pageinfo.namespace;
let strona_podrecznika=((namespace!="")?(namespace+":"):"")+StronicowyParser.pageinfo.bookname;
promise=Promise.resolve(strona_podrecznika);
}else{
let zaan=$(element_strony).parents('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((zaan!==null)&&(zaan.length>0)){
let strona=zaan[0].getAttribute('nazwa_strony');
if(strona){
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](strona);
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}
if(tab_promise2){tab_promise2.push(true);}
promise.then(async (strona_podrecznika)=>{
await StronicowyParser.muteks.zablokuj();
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find(".klasa_nagłówka");
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)){
let g=0;
let tab_naglowka=new Array();
let tab_hn=new Array();
for(let z=0;z<klasa_naglowka.length;++z){
let pojedyncza_klasa_naglowka=klasa_naglowka[z];
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==pojedyncza_klasa_naglowka){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
let dana_klasa_naglowka=pojedyncza_klasa_naglowka.querySelector('.mw-headline');
if(dana_klasa_naglowka!==null){
if((dana_klasa_naglowka.parentNode!==null)&&(dana_klasa_naglowka.parentNode.tagName.toUpperCase().match(/^[Hh]\d+$/g))
&&(dana_klasa_naglowka.parentNode.parentNode!=null)&&(dana_klasa_naglowka.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&($(dana_klasa_naglowka.parentNode.parentNode).hasClass('klasa_nagłówka'))){
let naglowek=StronicowyParser.style.UsunStyle(dana_klasa_naglowka.innerHTML).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_").replace(/&/g,"&").replace(/ /g,"_");
let ww=1;
for(let x=0;x<tab_naglowka.length;++x){
if(tab_naglowka[x]==naglowek){
++ww;
}
}
naglowek=naglowek+((ww>1)?ww:"");
tab_naglowka[g]=naglowek;
tab_hn[g]=dana_klasa_naglowka.parentNode;
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, na stronie głównej podręcznika, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let nazwa_podrecznika=strona_podrecznika.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
let naglowek_sekcji_podrecznika=tab_naglowka[c].replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
edit_action(c+1,nazwa_podrecznika,tab_hn[c],nazwa_podrecznika+"#"+naglowek_sekcji_podrecznika,true);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();return;}
let headline=tab_hn[c].querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
++g;
}
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceNaglowki(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
function RozwazajNaglowki(){
let toc_fun=new StronicowyParser.ListaNodeTOC();
if((toc_fun.toc!==null)&&(toc_fun.toc.length>0)){
for(let w=0;w<toc_fun.toc.length;++w){
let czy_side_bar_toc=toc_fun.CzySideBarToc(toc_fun.toc[w]);
let ile_jest=0;
let li=toc_fun.toc[w].getElementsByTagName('li');
if((li!==null)&&(li.length>0)){
for(let dd=0;dd<li.length;++dd){
let element_li=li[dd];
let tocnumber;let toctext_wartosc;
if(czy_side_bar_toc){
tocnumber=element_li.querySelector('.sidebar-toc-numb');
if(!tocnumber){continue;}
toctext_wartosc=element_li.querySelector('.sidebar-toc-text').innerHTML.replace(new RegExp(StronicowyParser.wzor.BezZnakowSpecjalnych(tocnumber.outerHTML),"g"),"");
}else{
tocnumber=element_li.querySelector('.tocnumber');
toctext_wartosc=element_li.querySelector('.toctext').innerHTML;
}
if((tocnumber!==null)&&(toctext_wartosc!==null)){
let czy_jest=undefined;
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)&&(klasa_naglowka[ile_jest]!=null)){
let element_klasa_naglowka=klasa_naglowka[ile_jest];
let headline=element_klasa_naglowka.querySelector('.mw-headline');
if((headline!==null)
&&(headline.parentNode!==null)
&&(headline.parentNode.tagName.toUpperCase().match(/^H\d+$/))
&&(headline.parentNode.parentNode!==null)
&&(headline.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&(headline.parentNode.parentNode===element_klasa_naglowka)
){
let element_a;
if(czy_side_bar_toc){
element_a=tocnumber.parentNode.parentNode;
}else{
element_a=tocnumber.parentNode;
}
if(element_a.tagName.toUpperCase()=="A"){
let href=StronicowyParser.kodowanie.DecodeHtml(element_a.getAttribute('href'));
if(href!==null){
href=href.replace(/^#/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
let id_headline=headline.getAttribute('id');
if(id_headline!==null){
id_headline=id_headline.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
if(href!=id_headline){czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
if(czy_jest===undefined){ile_jest+=1;}
if((czy_jest===undefined)||(!czy_jest)){
let element_toctext=StronicowyParser.style.UsunStyle(toctext_wartosc).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ");
if(stronasubst_tablica_rozdzialow[element_toctext]==null){
stronasubst_tablica_rozdzialow[element_toctext]=new Array(tocnumber);
}else{
stronasubst_tablica_rozdzialow[element_toctext].push(tocnumber);
}
}
}
}
}
}
}
}
StronicowyParser.LimitTOC(true,stronasubst_ukrywaj_toc);
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],true,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(StronicowyParser.CzyWlaczycSideBarTOC(undefined,true))){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
RozwazajNaglowki();
if(stronasubst_mathml){
$("div.toc ul > li > a > span.toctext").toggleClass("mathml");
$("div.toc_spis ul > li > a > span.toctext").toggleClass("mathml");
$("div.mw-table-of-contents-container > nav.sidebar-toc ul > li > a > div.sidebar-toc-text").toggleClass("mathml");
}
function Strona(strona){
let strona_re=StronicowyParser.wzor.BezZnakowSpecjalnych(strona);
let re=new RegExp("^\\s*"+strona_re+"\\s*#","g");
return re;
}
function CzyArtykulyZNaglowkamiDlaStrony(re){
for(let s in titles){
let czy_hash=titles[s].match(re);
if(czy_hash){
return true;
}
}
return false;
}
let catlinks_fun=new StronicowyParser.LinkiKategorii();
await catlinks_fun.PobierzKategorieStrony();
for ( let t in titles ) {
let strona=titles[t].match(/^[^#]*/g).toString();
let szablon_artykulu;
let re_strona=Strona(strona);
let czy_naglowki=CzyArtykulyZNaglowkamiDlaStrony(re_strona);
if(!czy_naglowki){
szablon_artykulu="{{:"+strona+"}}";
}else{
/*---------------------------------*/
let rozdzial1=null;
let re=/^([^#]*)#(.*)$/g;
if(re.test(titles[t])){
rozdzial1=titles[t].replace(re,"$2");
rozdzial1=rozdzial1.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial1="";}
let rozdzial2=null;
let tit=titles[parseInt(t)+1];
if( tit && re.test(tit) && re_strona.test(tit)){
rozdzial2=tit.replace(re,"$2");
rozdzial2=rozdzial2.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial2="";}
/*---------------------------*/
szablon_artykulu="{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|TekstRozdziałuStrony|"+strona+"|"+rozdzial1+"|"+rozdzial2+"}}}}";
}
szablon_artykulu="{{PrzytnijTekst|"+szablon_artykulu+"}}";
if(stronasubst_opakuj_kategorie_ze_sortowaniem){
szablon_artykulu="{{OpakujKategorieZeSortowaniem|"+szablon_artykulu+"}}"
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text|categories',
title: strona,
text: "<div class=\"hn hn_"+t+"\">\n"+szablon_artykulu+"\n</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
catlinks_fun.AnalizaKategorii(data).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);}
WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2).then((result) => {}).catch((error) => {});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function CzyszczenieZZdarzeńTableOfContent(){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
}
}
CzyszczenieZZdarzeńTableOfContent();
let tab_promise2=new StronicowyParser.SugerowaneObiekty();
async function CzyStronaSubst(element,aktualna_strona,tab_promise2){
if(tab_promise2){tab_promise2.push(true);}
await StronicowyParser.muteks.zablokuj();
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: aktualna_strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.expandtemplates.wikitext;
if((wikikod!==null)&&(aktualna_strona!==null)){
if(tab_promise2){tab_promise2.push(true);}
StronaSubst(element,wikikod,aktualna_strona,tab_promise2).then((result) => {}).catch((error) => {});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
let aktualna_strona=StronicowyParser.pageinfo.fullname;
if(tab_promise2){tab_promise2.push(true,true);}
CzyStronaSubst(document,aktualna_strona,tab_promise2);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
function Progress(){
var c=document.createElement('div');
c.setAttribute("id","pasek_postępu")
c.setAttribute('style','line-height:1.2em;margin-top:-2px;margin-left:-2px;position:absolute;width:250px;height:80px;border:1px solid black;box-sizing:border-box;padding:5px;background-color:white;display:flex;flex-direction:column;box-sizing:border-box;');
var label=document.createElement('label');
label.setAttribute('for','file1');
label.innerHTML="<span style=\"color:blue;\">Ukończone wątki: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_0=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file1')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;');
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_1=c.appendChild(progress);
var label=document.createElement('label');
label.setAttribute('for','file2');
label.innerHTML="<span style=\"color:blue;\">Zwolnione blokaty: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_1=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file2')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;')
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_2=c.appendChild(progress);
function PozycjaXY(){
c.style.top=(window.scrollY+document.documentElement.clientHeight-parseFloat(c.style.height))+"px";
c.style.left=(window.scrollX+document.documentElement.clientWidth-parseFloat(c.style.width))+"px";
}
document.querySelector('body').appendChild(c);
PozycjaXY();
$(window).on('scroll',PozycjaXY);
$(window).on('resize',PozycjaXY);
return new Array(element_body_progress_1,element_body_progress_2,span_0,span_1);
}
var arr;
function __FUNKCJA(arr){
arr[0].setAttribute("value","0");
arr[1].setAttribute("value","0");
let dodatnie_0=tab_promise2.lengthPlus;
let ujemne_0=tab_promise2.lengthMinus;
let dodatnie_1=StronicowyParser.muteks.LiczbaBlokatPlus;
let ujemne_1=StronicowyParser.muteks.LiczbaBlokatMinus;
let postep_0=((dodatnie_0>0)?((ujemne_0/dodatnie_0)*100):0);
let postep_1=((dodatnie_1>0)?((ujemne_1/dodatnie_1)*100):0);
arr[0].setAttribute("value",postep_0);
arr[1].setAttribute("value",postep_1);
arr[2].innerHTML=(parseInt(postep_0*1000)/1000)+"%";
arr[3].innerHTML=(parseInt(postep_1*1000)/1000)+"%";
}
StronicowyParser.CzekajNaZakaczenie(tab_promise2,null,StronicowyParser.muteks,(tab_promise)=>{arr=Progress();__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);setTimeout(function(){let node_postep=document.getElementById('pasek_postępu');$(node_postep).remove();},2000);}).then(async (result) => {}).catch(()=>{});
};
StronicowyParser.WyswietlStronyKsiazki().then((result) => {}).catch((error) => {});
});
sg7axcyit7n50m74fbamy0k0zoy9hib
437325
437324
2022-08-09T17:28:30Z
Persino
2851
javascript
text/javascript
mw.loader.using('ext.gadget.gConfig', function(){
let globalne_zmienne=this;
StronicowyParser.WyswietlStronyKsiazki=async function(){
await StronicowyParser.muteks.zablokuj();
let stronasubst_latex=undefined;
let stronasubst_mathml=undefined;
let stronasubst_opakuj_kategorie_ze_sortowaniem=undefined;
let stronasubst_ukrywaj_toc=undefined;
let stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=undefined;
let stronasubst_aktualizowanie_nazw_artykulow=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=undefined;
let stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=undefined;
let stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=undefined;
let stronasubst_nie_usuwaj_styli=undefined;
let stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=undefined;
if((globalne_zmienne.gConfig!==undefined)&&(globalne_zmienne.gConfig.register!==undefined)&&(globalne_zmienne.gConfig.get!==undefined)){
mw.messages.set({
'StronaSubst-name': 'Strona zbiorcza',
'StronaSubst-description-page': 'Wikibooks:StronicowyParser/StronaSubst',
'StronaSubst-latex': 'Zamiast wzorów, wstaw tekst latexowy, w przeciwnym przypadku jest w formie LaTeX.',
'StronaSubst-mathml': 'Zamiast wzorów latexowych, wstaw je w formie znaczników MathML.',
'StronaSubst-opakuj_kategorie_ze_sortowaniem' : 'W stronach zbiorczych opakowuje kategorie, w postaci ramki, dla każdego artykułu z osobna.',
'StronaSubst-ukrywaj_toc' : "Ukrywa, począwszy od jakiegoś poziomu wszystkich tam spisów treści, na stronach zbiorczych.",
'StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach' : "Włącza dymki, nad linkami, w ładowanych dynamicznie stronach, tworząc je inteligentnymi.",
'StronaSubst-aktualizowanie_nazw_artykulow' : 'Aktualizuje na podstawie strony głównej nazwy tylko artykułów.',
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami' : "Aktualizuje sekcje poszczegónych rozdziałów artykułów ładowanych rozdziałami, domyślnie według sekcji w tych jednostkach.",
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika' : 'Aktualizuje, sekcje artykułów ładowanych rozdziałami, na podstawie strony głównej książki, a nie jego artykułów.',
'StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej' : 'Aktualizuje nagłówki strony głównej podręcznika na stronie zbiorczej.',
'StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule' : 'Aktualizuje, brakujące sekcje rozdziałów ładowanych rozdziałami artykułów, według wpisów na stronie głównej, na stronie zbiorczej.',
'StronaSubst-nie_usuwaj_styli' : 'Nie usuwa styli z nagłówków ładowanych stron.',
'StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst' : 'Rozwijaj szablony oznaczone szablonem SzablonSubst.',
});
gConfig.register('StronaSubst', {name: mw.msg('StronaSubst-name'), descriptionPage: mw.msg('StronaSubst-description-page')}, [
{
name: 'latex',
desc: mw.msg('StronaSubst-latex'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_latex']
},
{
name: 'mathml',
desc: mw.msg('StronaSubst-mathml'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_mathml']
},
{
name: 'opakuj_kategorie_ze_sortowaniem',
desc: mw.msg('StronaSubst-opakuj_kategorie_ze_sortowaniem'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_opakuj_kategorie_ze_sortowaniem']
},
{
name: 'ukrywaj_toc',
desc: mw.msg('StronaSubst-ukrywaj_toc'),
type: 'integer',
deflt: 0,
validation: function(n){ if((n<0)||(n==1)){ throw 'Wartość dotycząca poziomu ukrywania spisów treści jest nieprawidłowa!' }; return n; },
legacy: [window, 'wb_stronasubst_ukrywaj_toc']
},
{
name: 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach',
desc: mw.msg('StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach']
},
{
name: 'aktualizowanie_nazw_artykulow',
desc: mw.msg('StronaSubst-aktualizowanie_nazw_artykulow'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nazw_artykulow']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika']
},
{
name: 'aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej',
desc: mw.msg('StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej']
},
{
name: 'aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule',
desc: mw.msg('StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule']
},
{
name: 'nie_usuwaj_styli',
desc: mw.msg('StronaSubst-nie_usuwaj_styli'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_nie_usuwaj_styli']
},
{
name: 'rozwijaj_szablony_oznaczone_szablonem_szablonsubst',
desc: mw.msg('StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst']
},
]);
stronasubst_latex = (gConfig.get('StronaSubst', 'latex')==true);
stronasubst_mathml = (((gConfig.get('StronaSubst', 'mathml'))&&(!stronasubst_latex))==true);
stronasubst_opakuj_kategorie_ze_sortowaniem = (gConfig.get('StronaSubst', 'opakuj_kategorie_ze_sortowaniem')==true);
stronasubst_ukrywaj_toc = gConfig.get('StronaSubst', 'ukrywaj_toc');
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach = gConfig.get('StronaSubst', 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach');
stronasubst_aktualizowanie_nazw_artykulow = (gConfig.get('StronaSubst', 'aktualizowanie_nazw_artykulow')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami = (gConfig.get('StronaSubst', 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika = (gConfig.get('StronaSubst','aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika')==true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej = (gConfig.get('StronaSubst','aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej')==true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule = (gConfig.get('StronaSubst','aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule')==true);
stronasubst_nie_usuwaj_styli = (gConfig.get('StronaSubst','nie_usuwaj_styli')==true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst = (gConfig.get('StronaSubst','rozwijaj_szablony_oznaczone_szablonem_szablonsubst')==true);
}
//let podglad=document.querySelector('body:not(.action-view)');
//if(podglad){return;}
let stronasubst_tablica_tych_samych=new Array();
let stronasubst_tablica_rozdzialow=new Array();
let stronasubst_tablica_alternatywnych_nazw=new Array();
stronasubst_latex=((stronasubst_latex!==undefined)?stronasubst_latex:false);
stronasubst_mathml=((stronasubst_mathml!==undefined)?stronasubst_mathml:true);
stronasubst_opakuj_kategorie_ze_sortowaniem=((stronasubst_opakuj_kategorie_ze_sortowaniem!==undefined)?stronasubst_opakuj_kategorie_ze_sortowaniem:false);
stronasubst_ukrywaj_toc=parseInt(((stronasubst_ukrywaj_toc!==undefined)?stronasubst_ukrywaj_toc:0));
stronasubst_ukrywaj_toc=((!isNaN(stronasubst_ukrywaj_toc))?stronasubst_ukrywaj_toc:0);
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=((stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach!==undefined)?stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach:true);
stronasubst_aktualizowanie_nazw_artykulow=((stronasubst_aktualizowanie_nazw_artykulow!==undefined)?stronasubst_aktualizowanie_nazw_artykulow:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika:true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=((stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej!==undefined)?stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej:true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=((stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule!==undefined)?stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule:true);
stronasubst_nie_usuwaj_styli=((stronasubst_nie_usuwaj_styli!==undefined)?stronasubst_nie_usuwaj_styli:true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=((stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst!==undefined)?stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst:true);
async function AnalizujDalejSzablonSubst(element_strony,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let rozdzial_ksiazki="rozdział_książki";
let el=$(element_strony).find('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((el!==null)&&(el.length>0)){
for(let i=0;i<el.length;++i){
let element_el=el[i];
let ksiazka=element_el.querySelector("."+rozdzial_ksiazki);
if(ksiazka){
let nazwa_strony=element_el.getAttribute('nazwa_strony');
if(tab_promise2){tab_promise2.push(true);}
CzyStronaSubst(element_el,nazwa_strony,tab_promise2);
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
async function WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let title=data.parse.title;
let wikikod=data.parse.text['*'];
let strona_hash;
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let t=tab_uzyskane[0];
if(t==undefined){
console.log("Nie wykryto znacznika lsth_\d+.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
strona_hash=titles[t];
let selflink=document.createElement('div');
selflink.innerHTML=wikikod;
let czy_selflink=selflink.getElementsByClassName('selflink');
if((czy_selflink!==null)&&(czy_selflink.length==1)){
let elements=tabstrona[strona_hash];
let a=document.createElement('a');/*Tworzenie linku*/
a.setAttribute('href',StronicowyParser.kodowanie.EncodeHtml(title));
a.innerHTML=strona_hash;
let span=document.createElement('span');
span.appendChild(a);
span.setAttribute("class","niw link");/*Dodawanie klasy, by inny skript JS to przeanalizował jako link*/
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo(span);
}
for(let q in elements){
let element=elements[q];
element.innerHTML="";
element.appendChild(span);
$(element).wrap(function(){return "<strong></strong>";});
let przed=document.createTextNode("{{:");
let po=document.createTextNode("}}");
element.insertBefore(przed,element.firstChild);
element.appendChild(po);
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=tab_uzyskane[1].innerHTML;
let elements=tabstrona[strona_hash];
for(let q in elements){
let element=elements[q];
element.innerHTML=wikikod;
StronicowyParser.ZamienLinkiNaLinkiDoStronyAktualnej(element,title,titles);
}
StronicowyParser.AktualizujSpisTresciModuluStrony(elements,tabs,strona_hash,stronasubst_tablica_alternatywnych_nazw,stronasubst_tablica_tych_samych,stronasubst_tablica_rozdzialow,true,stronasubst_latex,stronasubst_mathml)
let strona_start=$(elements[0]).parents(".strona_start");
let rodzic=undefined;
if((strona_start!==null)&&(strona_start.length>0)){
rodzic=strona_start[0];
}
StronicowyParser.IndeksujHeadLine(rodzic);
StronicowyParser.PrzeIndeksujWszystkieTOC(rodzic,true);
for(let q in elements){
let element=elements[q];
async function ElementDalszychObliczen(element,tab_promise2){
await StronicowyParser.muteks.zablokuj(true);
StronicowyParser.PoprawRozdzialyStron(element);
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu(element,tab_promise2);//Funkcja jako gadżet do numerowania rozdziałów.
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element,tab_promise2);
}
if((StronicowyParser.szablony&&StronicowyParser.szablony.LadujSzablon)&&(stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst)){
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(element,title,titles,undefined,tab_promise).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(()=>{
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika(element);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
ElementDalszychObliczen(element,tab_promise2);
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function ToogleTableOfContainer(panel){
let id=panel.target;
let tagname=id.tagName.toUpperCase();
//console.log(czy_klasa,tagname,"TYTAN)";
if(tagname=="BUTTON"){
let czy_klasa_1=$(id).hasClass('sidebar-toc-toggle');
let czy_klasa_2=$(id).hasClass('vector-toc-collapse-button');
if(czy_klasa_1){
$(id).parent().children().last().each((i,element)=>{
let expanded=$(id).attr('aria-expanded');
if(expanded=="false"){
$(element).css('display',"block");
$(element).closest('li').addClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','true');
}else if(expanded=="true"){
$(element).css('display',"none");
$(element).closest('li').removeClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','false');
}
});
}else if(czy_klasa_2){
$(id).parents('#sidebar-toc-label').siblings('ul').each((i,element)=>{
let ukryj=$(element).css('display');
if(ukryj!="none"){
$(element).css('display',"none");
id.innerHTML=" pokaż ";
}else{
$(element).css('display',"block");
id.innerHTML=" ukryj "
}
});
}
}
}
let mutekstoogle=new StronicowyParser.Muteks();
async function ScrollTableOfContainer(){
await mutekstoogle.zablokuj();
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header').first().each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=rect_sticky.height-15;
});
let parser=document.querySelector('#mw-content-text .mw-parser-output');
if(parser){
let rect=parser.getBoundingClientRect();
if(rect.top>=height_sticky){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item').first().addClass('sidebar-toc-list-item-active');
mutekstoogle.odblokuj();
return;
}
}else{
mutekstoogle.odblokuj();
return;
}
var str=$('#mw-content-text .mw-parser-output').find('h1, h2, h3, h4, h5, h6');
if((str!==null)&&(str.length>0)){
var naglowek;
for(i=0;i<str.length;++i){
let element=str[i];
let rect=element.getBoundingClientRect();
if(rect.top>=height_sticky){
let mw_naglowek=element.querySelector('.mw-headline');
if(mw_naglowek){
let id_naglowek=mw_naglowek.getAttribute('id');
let tak=false;
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+id_naglowek){
let display=window.getComputedStyle(element, null).getPropertyValue('display');
if(display!="none"){
tak=true;
}
}
});
if(tak){
naglowek=id_naglowek;
break;
}
}
}
}
if(naglowek){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+naglowek){
$(element).addClass('sidebar-toc-list-item-active');
}
});
}
}
mutekstoogle.odblokuj();
}
async function StronaSubst(element_strony,wikikod,aktualna_strona,tab_promise2){
await StronicowyParser.muteks.zablokuj();
StronicowyParser.NaprawNaglowkiStrony(element_strony,true);
let czy_wikikod=wikikod.match(/^[_\s]*$/g);
let strona_start=$('#mw-content-text .mw-parser-output .strona_start');
function CzyWszystkieNaglowkiWewnatrzStronaStart(){
let pole=$('#mw-content-text .mw-parser-output').find('h1,h2,h3,h4,h5,h6');
for(let i=0;i<pole.length;++i){
let s=strona_start.find(pole[i]);
if((s===null)||(s.length==0)){
return false;
}
}
return true;
}
if(czy_wikikod){
StronicowyParser.muteks.odblokuj();
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyArtykulu)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyArtykulu(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
let czy_numerowac=StronicowyParser.CzyWlaczycSideBarTOC(undefined,true);
if(czy_numerowac){
czy_numerowac=false;
tab_promise.push(true);
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: StronicowyParser.pageinfo.fullname,
text: '{{#invoke:StronicowyParser|CzyStronęNumerować|'+StronicowyParser.pageinfo.fullname+'}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
let wikikod=data.expandtemplates.wikitext;
let czy_wikikod=/^[_\s]*$/g.test(wikikod);
if(!czy_wikikod){
czy_numerowac=true;
}
tab_promise.pop();
}).catch(()=>{tab_promise.pop();});
}
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
let tab_promise=new Array(true);
StronicowyParser.LimitTOC(czy_numerowac,stronasubst_ukrywaj_toc);
StronicowyParser.szablony.LadujSzablon(null,null,null,czy_numerowac,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true)
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],czy_numerowac,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(czy_numerowac)){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
return;
}
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(null,null,null,undefined,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async (result) => {
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
await StronicowyParser.CzekajNaZakaczenie(tab_promise).then(async (result) => {}).catch(()=>{});
await StronicowyParser.muteks.zablokuj();
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
let rozdzial_ksiazki="rozdział_książki";
let tagclass=element_strony.getElementsByClassName(rozdzial_ksiazki);
if(tagclass===null){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return null;
}
let liczba_elementow=tagclass.length;
if(liczba_elementow==0){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return null;
}
let titles=new Array();
let tabstrona=new Array();
let tabs=new Array();
let tab_section=new Array();
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element_strony,tab_promise2);
}
let tab_hn=new Array();
async function edit_action(numer,strona,hn,link_strona,czy_link_nie_w_naglowku){
await StronicowyParser.muteks.zablokuj();
let linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection===null){
let editsection=document.createElement('span');
editsection.classList.add('mw-editsection');
let bracket_poczatek=document.createElement('span');
bracket_poczatek.classList.add('mw-editsection-bracket')
bracket_poczatek.innerHTML="[";
let a=document.createElement('a');
a.setAttribute('href',"/w/index.php?title="+StronicowyParser.kodowanie.EncodeHtml(strona,false,true)+"&action=edit"+((numer>0)?("§ion="+numer):""));
a.setAttribute('title',"Edytuj artykuł: "+link_strona);
a.innerHTML="edytuj";
let bracket_koniec=document.createElement('span');
bracket_koniec.classList.add('mw-editsection-bracket')
bracket_koniec.innerHTML="]";
editsection.appendChild(bracket_poczatek);
editsection.appendChild(a)
editsection.appendChild(bracket_koniec);
hn.appendChild(editsection);
}
linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection!==null){
let mw_editsection_bracket=linkstrony_editsection.querySelector('a');
if(mw_editsection_bracket!==null){
if(czy_link_nie_w_naglowku){
let a=document.createElement('a');
a.innerHTML="artykuł";
a.setAttribute("href",StronicowyParser.kodowanie.EncodeHtml("/wiki/"+StronicowyParser.kodowanie.EncodeHtml(link_strona,false,true)));
a.setAttribute("title","Zobacz artykuł: "+link_strona);
let span=document.createElement('span');
span.innerHTML="| ";
span.setAttribute('class',"mw-editsection-bracket")
let czy_ma=$(mw_editsection_bracket).parent().hasClass('link');
if(czy_ma){
let rodzic_mw_editsection_bracket=mw_editsection_bracket.parentNode;
let span2=linkstrony_editsection.insertBefore(span, rodzic_mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}else{
let span2=linkstrony_editsection.insertBefore(span, mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}
}
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(linkstrony_editsection).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
}
for (let i=0;i<liczba_elementow;++i){
let tagclassname=tagclass[i];
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find("."+rozdzial_ksiazki);
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==tagclassname){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
if(tagclassname.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let class_element=tagclassname.getElementsByClassName('strona_subst');
let element;
if((class_element!==null)&&(class_element.length==1)){
element=class_element[0];
if(element.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let czy_link_nie_w_naglowku;
let strona_headline=tagclassname.getElementsByClassName('mw-headline');
let link_strona;
if((strona_headline!==null)&&(strona_headline.length==1)){
strona_a=strona_headline[0].getElementsByTagName('a');
if((strona_a!==null)&&(strona_a.length==1)){
link_strona=StronicowyParser.kodowanie.DecodeHtml(strona_a[0].getAttribute('href'));
if(link_strona!==null){
let re=/\/wiki\//g;
if(re.test(link_strona)){
link_strona=link_strona.substring(6,link_strona.length);
czy_link_nie_w_naglowku=false;
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}
}else{
link_strona=StronicowyParser.style.UsunStyle(element.innerHTML);
czy_link_nie_w_naglowku=true;
}
}
let re = /^[_\s]*$/g;
let dopasowanie = re.test(link_strona);
if(dopasowanie){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return;
};
link_strona=link_strona.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ").replace(/&/g,"&").replace(/ /g," ");
let hash=link_strona.replace(/^([^#]*)#(.*)$/,"$2").replace(/&/g,"&").replace(/ /g,"_");
/**/
let hn=strona_headline[0].parentNode;
if((hn===null)||(!hn.tagName.toUpperCase().match(/^H\d+$/g))){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
tab_section[i]=new Array(hn,link_strona,czy_link_nie_w_naglowku);
let strona=link_strona.match(/^[^#]*/g).toString();
async function PraceIteracyjne(tab_promise2){
await StronicowyParser.muteks.zablokuj();
if(/#/g.test(link_strona)){
let hash=link_strona.replace(/^([^#]*)#(.*)$/g,"$2");
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let numer=hn.innerHTML;
numer=parseInt(numer);
if(isNaN(numer)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return ;}
let tab_c=tab_section[c];
edit_action(numer,tab_c[1].match(/^[^#]*/g).toString(),tab_c[0],tab_c[1],tab_c[2]);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami){
if(!stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}else{
let uzupelniaj_sekcje_artykulow;
if(stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule){
uzupelniaj_sekcje_artykulow="tak";
}else{
uzupelniaj_sekcje_artykulow="";
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+link_strona+"|analiza=tak|uzupełniaj sekcje artykułów="+uzupelniaj_sekcje_artykulow+"|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
let a=headline.getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
a[0].setAttribute('title',stare);
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
}else{
edit_action(0,strona,hn,link_strona,czy_link_nie_w_naglowku);
if(stronasubst_aktualizowanie_nazw_artykulow){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+strona+"|analiza=tak|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceIteracyjne(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
/**/
tabs[i]=link_strona;
let czy=false;
for(let d in titles){
if(titles[d]==link_strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=link_strona;
}
if(tabstrona[link_strona]==null){
tabstrona[link_strona]=new Array();
}
let tab=tabstrona[link_strona];
let tablen=tab.length;
tabstrona[link_strona][tablen]=element;
}
async function PraceNaglowki(tab_promise2){
await StronicowyParser.muteks.zablokuj();
let promise;
if(element_strony==document){
let namespace=StronicowyParser.pageinfo.namespace;
let strona_podrecznika=((namespace!="")?(namespace+":"):"")+StronicowyParser.pageinfo.bookname;
promise=Promise.resolve(strona_podrecznika);
}else{
let zaan=$(element_strony).parents('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((zaan!==null)&&(zaan.length>0)){
let strona=zaan[0].getAttribute('nazwa_strony');
if(strona){
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](strona);
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}
if(tab_promise2){tab_promise2.push(true);}
promise.then(async (strona_podrecznika)=>{
await StronicowyParser.muteks.zablokuj();
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find(".klasa_nagłówka");
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)){
let g=0;
let tab_naglowka=new Array();
let tab_hn=new Array();
for(let z=0;z<klasa_naglowka.length;++z){
let pojedyncza_klasa_naglowka=klasa_naglowka[z];
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==pojedyncza_klasa_naglowka){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
let dana_klasa_naglowka=pojedyncza_klasa_naglowka.querySelector('.mw-headline');
if(dana_klasa_naglowka!==null){
if((dana_klasa_naglowka.parentNode!==null)&&(dana_klasa_naglowka.parentNode.tagName.toUpperCase().match(/^[Hh]\d+$/g))
&&(dana_klasa_naglowka.parentNode.parentNode!=null)&&(dana_klasa_naglowka.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&($(dana_klasa_naglowka.parentNode.parentNode).hasClass('klasa_nagłówka'))){
let naglowek=StronicowyParser.style.UsunStyle(dana_klasa_naglowka.innerHTML).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_").replace(/&/g,"&").replace(/ /g,"_");
let ww=1;
for(let x=0;x<tab_naglowka.length;++x){
if(tab_naglowka[x]==naglowek){
++ww;
}
}
naglowek=naglowek+((ww>1)?ww:"");
tab_naglowka[g]=naglowek;
tab_hn[g]=dana_klasa_naglowka.parentNode;
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, na stronie głównej podręcznika, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let nazwa_podrecznika=strona_podrecznika.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
let naglowek_sekcji_podrecznika=tab_naglowka[c].replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
edit_action(c+1,nazwa_podrecznika,tab_hn[c],nazwa_podrecznika+"#"+naglowek_sekcji_podrecznika,true);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();return;}
let headline=tab_hn[c].querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
++g;
}
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceNaglowki(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
function RozwazajNaglowki(){
let toc_fun=new StronicowyParser.ListaNodeTOC();
if((toc_fun.toc!==null)&&(toc_fun.toc.length>0)){
for(let w=0;w<toc_fun.toc.length;++w){
let czy_side_bar_toc=toc_fun.CzySideBarToc(toc_fun.toc[w]);
let ile_jest=0;
let li=toc_fun.toc[w].getElementsByTagName('li');
if((li!==null)&&(li.length>0)){
for(let dd=0;dd<li.length;++dd){
let element_li=li[dd];
let tocnumber;let toctext_wartosc;
if(czy_side_bar_toc){
tocnumber=element_li.querySelector('.sidebar-toc-numb');
if(!tocnumber){continue;}
toctext_wartosc=element_li.querySelector('.sidebar-toc-text').innerHTML.replace(new RegExp(StronicowyParser.wzor.BezZnakowSpecjalnych(tocnumber.outerHTML),"g"),"");
}else{
tocnumber=element_li.querySelector('.tocnumber');
toctext_wartosc=element_li.querySelector('.toctext').innerHTML;
}
if((tocnumber!==null)&&(toctext_wartosc!==null)){
let czy_jest=undefined;
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)&&(klasa_naglowka[ile_jest]!=null)){
let element_klasa_naglowka=klasa_naglowka[ile_jest];
let headline=element_klasa_naglowka.querySelector('.mw-headline');
if((headline!==null)
&&(headline.parentNode!==null)
&&(headline.parentNode.tagName.toUpperCase().match(/^H\d+$/))
&&(headline.parentNode.parentNode!==null)
&&(headline.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&(headline.parentNode.parentNode===element_klasa_naglowka)
){
let element_a;
if(czy_side_bar_toc){
element_a=tocnumber.parentNode.parentNode;
}else{
element_a=tocnumber.parentNode;
}
if(element_a.tagName.toUpperCase()=="A"){
let href=StronicowyParser.kodowanie.DecodeHtml(element_a.getAttribute('href'));
if(href!==null){
href=href.replace(/^#/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
let id_headline=headline.getAttribute('id');
if(id_headline!==null){
id_headline=id_headline.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
if(href!=id_headline){czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
if(czy_jest===undefined){ile_jest+=1;}
if((czy_jest===undefined)||(!czy_jest)){
let element_toctext=StronicowyParser.style.UsunStyle(toctext_wartosc).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ");
if(stronasubst_tablica_rozdzialow[element_toctext]==null){
stronasubst_tablica_rozdzialow[element_toctext]=new Array(tocnumber);
}else{
stronasubst_tablica_rozdzialow[element_toctext].push(tocnumber);
}
}
}
}
}
}
}
}
StronicowyParser.LimitTOC(true,stronasubst_ukrywaj_toc);
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],true,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(StronicowyParser.CzyWlaczycSideBarTOC(undefined,true))){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
RozwazajNaglowki();
if(stronasubst_mathml){
$("div.toc ul > li > a > span.toctext").toggleClass("mathml");
$("div.toc_spis ul > li > a > span.toctext").toggleClass("mathml");
$("div.mw-table-of-contents-container > nav.sidebar-toc ul > li > a > div.sidebar-toc-text").toggleClass("mathml");
}
function Strona(strona){
let strona_re=StronicowyParser.wzor.BezZnakowSpecjalnych(strona);
let re=new RegExp("^\\s*"+strona_re+"\\s*#","g");
return re;
}
function CzyArtykulyZNaglowkamiDlaStrony(re){
for(let s in titles){
let czy_hash=titles[s].match(re);
if(czy_hash){
return true;
}
}
return false;
}
let catlinks_fun=new StronicowyParser.LinkiKategorii();
await catlinks_fun.PobierzKategorieStrony();
for ( let t in titles ) {
let strona=titles[t].match(/^[^#]*/g).toString();
let szablon_artykulu;
let re_strona=Strona(strona);
let czy_naglowki=CzyArtykulyZNaglowkamiDlaStrony(re_strona);
if(!czy_naglowki){
szablon_artykulu="{{:"+strona+"}}";
}else{
/*---------------------------------*/
let rozdzial1=null;
let re=/^([^#]*)#(.*)$/g;
if(re.test(titles[t])){
rozdzial1=titles[t].replace(re,"$2");
rozdzial1=rozdzial1.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial1="";}
let rozdzial2=null;
let tit=titles[parseInt(t)+1];
if( tit && re.test(tit) && re_strona.test(tit)){
rozdzial2=tit.replace(re,"$2");
rozdzial2=rozdzial2.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial2="";}
/*---------------------------*/
szablon_artykulu="{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|TekstRozdziałuStrony|"+strona+"|"+rozdzial1+"|"+rozdzial2+"}}}}";
}
szablon_artykulu="{{PrzytnijTekst|"+szablon_artykulu+"}}";
if(stronasubst_opakuj_kategorie_ze_sortowaniem){
szablon_artykulu="{{OpakujKategorieZeSortowaniem|"+szablon_artykulu+"}}"
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text|categories',
title: strona,
text: "<div class=\"hn hn_"+t+"\">\n"+szablon_artykulu+"\n</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
catlinks_fun.AnalizaKategorii(data).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);}
WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2).then((result) => {}).catch((error) => {});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function CzyszczenieZZdarzeńTableOfContent(){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
}
}
CzyszczenieZZdarzeńTableOfContent();
let tab_promise2=new StronicowyParser.SugerowaneObiekty();
async function CzyStronaSubst(element,aktualna_strona,tab_promise2){
if(tab_promise2){tab_promise2.push(true);}
await StronicowyParser.muteks.zablokuj();
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: aktualna_strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.expandtemplates.wikitext;
if((wikikod!==null)&&(aktualna_strona!==null)){
if(tab_promise2){tab_promise2.push(true);}
StronaSubst(element,wikikod,aktualna_strona,tab_promise2).then((result) => {}).catch((error) => {});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
let aktualna_strona=StronicowyParser.pageinfo.fullname;
if(tab_promise2){tab_promise2.push(true,true);}
CzyStronaSubst(document,aktualna_strona,tab_promise2);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
function Progress(){
var c=document.createElement('div');
c.setAttribute("id","pasek_postępu")
c.setAttribute('style','line-height:1.2em;margin-top:-2px;margin-left:-2px;position:absolute;width:250px;height:80px;border:1px solid black;box-sizing:border-box;padding:8px 5px;background-color:white;display:flex;flex-direction:column;box-sizing:border-box;');
var label=document.createElement('label');
label.setAttribute('for','file1');
label.innerHTML="<span style=\"color:blue;\">Ukończone wątki: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_0=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file1')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;');
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_1=c.appendChild(progress);
var label=document.createElement('label');
label.setAttribute('for','file2');
label.innerHTML="<span style=\"color:blue;\">Zwolnione blokaty: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_1=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file2')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;')
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_2=c.appendChild(progress);
function PozycjaXY(){
c.style.top=(window.scrollY+document.documentElement.clientHeight-parseFloat(c.style.height))+"px";
c.style.left=(window.scrollX+document.documentElement.clientWidth-parseFloat(c.style.width))+"px";
}
document.querySelector('body').appendChild(c);
PozycjaXY();
$(window).on('scroll',PozycjaXY);
$(window).on('resize',PozycjaXY);
return new Array(element_body_progress_1,element_body_progress_2,span_0,span_1);
}
var arr;
function __FUNKCJA(arr){
arr[0].setAttribute("value","0");
arr[1].setAttribute("value","0");
let dodatnie_0=tab_promise2.lengthPlus;
let ujemne_0=tab_promise2.lengthMinus;
let dodatnie_1=StronicowyParser.muteks.LiczbaBlokatPlus;
let ujemne_1=StronicowyParser.muteks.LiczbaBlokatMinus;
let postep_0=((dodatnie_0>0)?((ujemne_0/dodatnie_0)*100):0);
let postep_1=((dodatnie_1>0)?((ujemne_1/dodatnie_1)*100):0);
arr[0].setAttribute("value",postep_0);
arr[1].setAttribute("value",postep_1);
arr[2].innerHTML=(parseInt(postep_0*1000)/1000)+"%";
arr[3].innerHTML=(parseInt(postep_1*1000)/1000)+"%";
}
StronicowyParser.CzekajNaZakaczenie(tab_promise2,null,StronicowyParser.muteks,(tab_promise)=>{arr=Progress();__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);setTimeout(function(){let node_postep=document.getElementById('pasek_postępu');$(node_postep).remove();},2000);}).then(async (result) => {}).catch(()=>{});
};
StronicowyParser.WyswietlStronyKsiazki().then((result) => {}).catch((error) => {});
});
8b32bkft3vapd1ali8lj37682upcekn
437326
437325
2022-08-09T17:29:48Z
Persino
2851
javascript
text/javascript
mw.loader.using('ext.gadget.gConfig', function(){
let globalne_zmienne=this;
StronicowyParser.WyswietlStronyKsiazki=async function(){
await StronicowyParser.muteks.zablokuj();
let stronasubst_latex=undefined;
let stronasubst_mathml=undefined;
let stronasubst_opakuj_kategorie_ze_sortowaniem=undefined;
let stronasubst_ukrywaj_toc=undefined;
let stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=undefined;
let stronasubst_aktualizowanie_nazw_artykulow=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=undefined;
let stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=undefined;
let stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=undefined;
let stronasubst_nie_usuwaj_styli=undefined;
let stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=undefined;
if((globalne_zmienne.gConfig!==undefined)&&(globalne_zmienne.gConfig.register!==undefined)&&(globalne_zmienne.gConfig.get!==undefined)){
mw.messages.set({
'StronaSubst-name': 'Strona zbiorcza',
'StronaSubst-description-page': 'Wikibooks:StronicowyParser/StronaSubst',
'StronaSubst-latex': 'Zamiast wzorów, wstaw tekst latexowy, w przeciwnym przypadku jest w formie LaTeX.',
'StronaSubst-mathml': 'Zamiast wzorów latexowych, wstaw je w formie znaczników MathML.',
'StronaSubst-opakuj_kategorie_ze_sortowaniem' : 'W stronach zbiorczych opakowuje kategorie, w postaci ramki, dla każdego artykułu z osobna.',
'StronaSubst-ukrywaj_toc' : "Ukrywa, począwszy od jakiegoś poziomu wszystkich tam spisów treści, na stronach zbiorczych.",
'StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach' : "Włącza dymki, nad linkami, w ładowanych dynamicznie stronach, tworząc je inteligentnymi.",
'StronaSubst-aktualizowanie_nazw_artykulow' : 'Aktualizuje na podstawie strony głównej nazwy tylko artykułów.',
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami' : "Aktualizuje sekcje poszczegónych rozdziałów artykułów ładowanych rozdziałami, domyślnie według sekcji w tych jednostkach.",
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika' : 'Aktualizuje, sekcje artykułów ładowanych rozdziałami, na podstawie strony głównej książki, a nie jego artykułów.',
'StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej' : 'Aktualizuje nagłówki strony głównej podręcznika na stronie zbiorczej.',
'StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule' : 'Aktualizuje, brakujące sekcje rozdziałów ładowanych rozdziałami artykułów, według wpisów na stronie głównej, na stronie zbiorczej.',
'StronaSubst-nie_usuwaj_styli' : 'Nie usuwa styli z nagłówków ładowanych stron.',
'StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst' : 'Rozwijaj szablony oznaczone szablonem SzablonSubst.',
});
gConfig.register('StronaSubst', {name: mw.msg('StronaSubst-name'), descriptionPage: mw.msg('StronaSubst-description-page')}, [
{
name: 'latex',
desc: mw.msg('StronaSubst-latex'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_latex']
},
{
name: 'mathml',
desc: mw.msg('StronaSubst-mathml'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_mathml']
},
{
name: 'opakuj_kategorie_ze_sortowaniem',
desc: mw.msg('StronaSubst-opakuj_kategorie_ze_sortowaniem'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_opakuj_kategorie_ze_sortowaniem']
},
{
name: 'ukrywaj_toc',
desc: mw.msg('StronaSubst-ukrywaj_toc'),
type: 'integer',
deflt: 0,
validation: function(n){ if((n<0)||(n==1)){ throw 'Wartość dotycząca poziomu ukrywania spisów treści jest nieprawidłowa!' }; return n; },
legacy: [window, 'wb_stronasubst_ukrywaj_toc']
},
{
name: 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach',
desc: mw.msg('StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach']
},
{
name: 'aktualizowanie_nazw_artykulow',
desc: mw.msg('StronaSubst-aktualizowanie_nazw_artykulow'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nazw_artykulow']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika']
},
{
name: 'aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej',
desc: mw.msg('StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej']
},
{
name: 'aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule',
desc: mw.msg('StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule']
},
{
name: 'nie_usuwaj_styli',
desc: mw.msg('StronaSubst-nie_usuwaj_styli'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_nie_usuwaj_styli']
},
{
name: 'rozwijaj_szablony_oznaczone_szablonem_szablonsubst',
desc: mw.msg('StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst']
},
]);
stronasubst_latex = (gConfig.get('StronaSubst', 'latex')==true);
stronasubst_mathml = (((gConfig.get('StronaSubst', 'mathml'))&&(!stronasubst_latex))==true);
stronasubst_opakuj_kategorie_ze_sortowaniem = (gConfig.get('StronaSubst', 'opakuj_kategorie_ze_sortowaniem')==true);
stronasubst_ukrywaj_toc = gConfig.get('StronaSubst', 'ukrywaj_toc');
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach = gConfig.get('StronaSubst', 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach');
stronasubst_aktualizowanie_nazw_artykulow = (gConfig.get('StronaSubst', 'aktualizowanie_nazw_artykulow')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami = (gConfig.get('StronaSubst', 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika = (gConfig.get('StronaSubst','aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika')==true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej = (gConfig.get('StronaSubst','aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej')==true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule = (gConfig.get('StronaSubst','aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule')==true);
stronasubst_nie_usuwaj_styli = (gConfig.get('StronaSubst','nie_usuwaj_styli')==true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst = (gConfig.get('StronaSubst','rozwijaj_szablony_oznaczone_szablonem_szablonsubst')==true);
}
//let podglad=document.querySelector('body:not(.action-view)');
//if(podglad){return;}
let stronasubst_tablica_tych_samych=new Array();
let stronasubst_tablica_rozdzialow=new Array();
let stronasubst_tablica_alternatywnych_nazw=new Array();
stronasubst_latex=((stronasubst_latex!==undefined)?stronasubst_latex:false);
stronasubst_mathml=((stronasubst_mathml!==undefined)?stronasubst_mathml:true);
stronasubst_opakuj_kategorie_ze_sortowaniem=((stronasubst_opakuj_kategorie_ze_sortowaniem!==undefined)?stronasubst_opakuj_kategorie_ze_sortowaniem:false);
stronasubst_ukrywaj_toc=parseInt(((stronasubst_ukrywaj_toc!==undefined)?stronasubst_ukrywaj_toc:0));
stronasubst_ukrywaj_toc=((!isNaN(stronasubst_ukrywaj_toc))?stronasubst_ukrywaj_toc:0);
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=((stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach!==undefined)?stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach:true);
stronasubst_aktualizowanie_nazw_artykulow=((stronasubst_aktualizowanie_nazw_artykulow!==undefined)?stronasubst_aktualizowanie_nazw_artykulow:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika:true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=((stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej!==undefined)?stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej:true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=((stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule!==undefined)?stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule:true);
stronasubst_nie_usuwaj_styli=((stronasubst_nie_usuwaj_styli!==undefined)?stronasubst_nie_usuwaj_styli:true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=((stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst!==undefined)?stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst:true);
async function AnalizujDalejSzablonSubst(element_strony,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let rozdzial_ksiazki="rozdział_książki";
let el=$(element_strony).find('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((el!==null)&&(el.length>0)){
for(let i=0;i<el.length;++i){
let element_el=el[i];
let ksiazka=element_el.querySelector("."+rozdzial_ksiazki);
if(ksiazka){
let nazwa_strony=element_el.getAttribute('nazwa_strony');
if(tab_promise2){tab_promise2.push(true);}
CzyStronaSubst(element_el,nazwa_strony,tab_promise2);
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
async function WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let title=data.parse.title;
let wikikod=data.parse.text['*'];
let strona_hash;
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let t=tab_uzyskane[0];
if(t==undefined){
console.log("Nie wykryto znacznika lsth_\d+.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
strona_hash=titles[t];
let selflink=document.createElement('div');
selflink.innerHTML=wikikod;
let czy_selflink=selflink.getElementsByClassName('selflink');
if((czy_selflink!==null)&&(czy_selflink.length==1)){
let elements=tabstrona[strona_hash];
let a=document.createElement('a');/*Tworzenie linku*/
a.setAttribute('href',StronicowyParser.kodowanie.EncodeHtml(title));
a.innerHTML=strona_hash;
let span=document.createElement('span');
span.appendChild(a);
span.setAttribute("class","niw link");/*Dodawanie klasy, by inny skript JS to przeanalizował jako link*/
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo(span);
}
for(let q in elements){
let element=elements[q];
element.innerHTML="";
element.appendChild(span);
$(element).wrap(function(){return "<strong></strong>";});
let przed=document.createTextNode("{{:");
let po=document.createTextNode("}}");
element.insertBefore(przed,element.firstChild);
element.appendChild(po);
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=tab_uzyskane[1].innerHTML;
let elements=tabstrona[strona_hash];
for(let q in elements){
let element=elements[q];
element.innerHTML=wikikod;
StronicowyParser.ZamienLinkiNaLinkiDoStronyAktualnej(element,title,titles);
}
StronicowyParser.AktualizujSpisTresciModuluStrony(elements,tabs,strona_hash,stronasubst_tablica_alternatywnych_nazw,stronasubst_tablica_tych_samych,stronasubst_tablica_rozdzialow,true,stronasubst_latex,stronasubst_mathml)
let strona_start=$(elements[0]).parents(".strona_start");
let rodzic=undefined;
if((strona_start!==null)&&(strona_start.length>0)){
rodzic=strona_start[0];
}
StronicowyParser.IndeksujHeadLine(rodzic);
StronicowyParser.PrzeIndeksujWszystkieTOC(rodzic,true);
for(let q in elements){
let element=elements[q];
async function ElementDalszychObliczen(element,tab_promise2){
await StronicowyParser.muteks.zablokuj(true);
StronicowyParser.PoprawRozdzialyStron(element);
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu(element,tab_promise2);//Funkcja jako gadżet do numerowania rozdziałów.
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element,tab_promise2);
}
if((StronicowyParser.szablony&&StronicowyParser.szablony.LadujSzablon)&&(stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst)){
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(element,title,titles,undefined,tab_promise).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(()=>{
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika(element);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
ElementDalszychObliczen(element,tab_promise2);
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function ToogleTableOfContainer(panel){
let id=panel.target;
let tagname=id.tagName.toUpperCase();
//console.log(czy_klasa,tagname,"TYTAN)";
if(tagname=="BUTTON"){
let czy_klasa_1=$(id).hasClass('sidebar-toc-toggle');
let czy_klasa_2=$(id).hasClass('vector-toc-collapse-button');
if(czy_klasa_1){
$(id).parent().children().last().each((i,element)=>{
let expanded=$(id).attr('aria-expanded');
if(expanded=="false"){
$(element).css('display',"block");
$(element).closest('li').addClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','true');
}else if(expanded=="true"){
$(element).css('display',"none");
$(element).closest('li').removeClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','false');
}
});
}else if(czy_klasa_2){
$(id).parents('#sidebar-toc-label').siblings('ul').each((i,element)=>{
let ukryj=$(element).css('display');
if(ukryj!="none"){
$(element).css('display',"none");
id.innerHTML=" pokaż ";
}else{
$(element).css('display',"block");
id.innerHTML=" ukryj "
}
});
}
}
}
let mutekstoogle=new StronicowyParser.Muteks();
async function ScrollTableOfContainer(){
await mutekstoogle.zablokuj();
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header').first().each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=rect_sticky.height-15;
});
let parser=document.querySelector('#mw-content-text .mw-parser-output');
if(parser){
let rect=parser.getBoundingClientRect();
if(rect.top>=height_sticky){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item').first().addClass('sidebar-toc-list-item-active');
mutekstoogle.odblokuj();
return;
}
}else{
mutekstoogle.odblokuj();
return;
}
var str=$('#mw-content-text .mw-parser-output').find('h1, h2, h3, h4, h5, h6');
if((str!==null)&&(str.length>0)){
var naglowek;
for(i=0;i<str.length;++i){
let element=str[i];
let rect=element.getBoundingClientRect();
if(rect.top>=height_sticky){
let mw_naglowek=element.querySelector('.mw-headline');
if(mw_naglowek){
let id_naglowek=mw_naglowek.getAttribute('id');
let tak=false;
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+id_naglowek){
let display=window.getComputedStyle(element, null).getPropertyValue('display');
if(display!="none"){
tak=true;
}
}
});
if(tak){
naglowek=id_naglowek;
break;
}
}
}
}
if(naglowek){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+naglowek){
$(element).addClass('sidebar-toc-list-item-active');
}
});
}
}
mutekstoogle.odblokuj();
}
async function StronaSubst(element_strony,wikikod,aktualna_strona,tab_promise2){
await StronicowyParser.muteks.zablokuj();
StronicowyParser.NaprawNaglowkiStrony(element_strony,true);
let czy_wikikod=wikikod.match(/^[_\s]*$/g);
let strona_start=$('#mw-content-text .mw-parser-output .strona_start');
function CzyWszystkieNaglowkiWewnatrzStronaStart(){
let pole=$('#mw-content-text .mw-parser-output').find('h1,h2,h3,h4,h5,h6');
for(let i=0;i<pole.length;++i){
let s=strona_start.find(pole[i]);
if((s===null)||(s.length==0)){
return false;
}
}
return true;
}
if(czy_wikikod){
StronicowyParser.muteks.odblokuj();
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyArtykulu)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyArtykulu(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
let czy_numerowac=StronicowyParser.CzyWlaczycSideBarTOC(undefined,true);
if(czy_numerowac){
czy_numerowac=false;
tab_promise.push(true);
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: StronicowyParser.pageinfo.fullname,
text: '{{#invoke:StronicowyParser|CzyStronęNumerować|'+StronicowyParser.pageinfo.fullname+'}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
let wikikod=data.expandtemplates.wikitext;
let czy_wikikod=/^[_\s]*$/g.test(wikikod);
if(!czy_wikikod){
czy_numerowac=true;
}
tab_promise.pop();
}).catch(()=>{tab_promise.pop();});
}
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
let tab_promise=new Array(true);
StronicowyParser.LimitTOC(czy_numerowac,stronasubst_ukrywaj_toc);
StronicowyParser.szablony.LadujSzablon(null,null,null,czy_numerowac,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true)
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],czy_numerowac,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(czy_numerowac)){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
return;
}
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(null,null,null,undefined,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async (result) => {
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
await StronicowyParser.CzekajNaZakaczenie(tab_promise).then(async (result) => {}).catch(()=>{});
await StronicowyParser.muteks.zablokuj();
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
let rozdzial_ksiazki="rozdział_książki";
let tagclass=element_strony.getElementsByClassName(rozdzial_ksiazki);
if(tagclass===null){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return null;
}
let liczba_elementow=tagclass.length;
if(liczba_elementow==0){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return null;
}
let titles=new Array();
let tabstrona=new Array();
let tabs=new Array();
let tab_section=new Array();
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element_strony,tab_promise2);
}
let tab_hn=new Array();
async function edit_action(numer,strona,hn,link_strona,czy_link_nie_w_naglowku){
await StronicowyParser.muteks.zablokuj();
let linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection===null){
let editsection=document.createElement('span');
editsection.classList.add('mw-editsection');
let bracket_poczatek=document.createElement('span');
bracket_poczatek.classList.add('mw-editsection-bracket')
bracket_poczatek.innerHTML="[";
let a=document.createElement('a');
a.setAttribute('href',"/w/index.php?title="+StronicowyParser.kodowanie.EncodeHtml(strona,false,true)+"&action=edit"+((numer>0)?("§ion="+numer):""));
a.setAttribute('title',"Edytuj artykuł: "+link_strona);
a.innerHTML="edytuj";
let bracket_koniec=document.createElement('span');
bracket_koniec.classList.add('mw-editsection-bracket')
bracket_koniec.innerHTML="]";
editsection.appendChild(bracket_poczatek);
editsection.appendChild(a)
editsection.appendChild(bracket_koniec);
hn.appendChild(editsection);
}
linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection!==null){
let mw_editsection_bracket=linkstrony_editsection.querySelector('a');
if(mw_editsection_bracket!==null){
if(czy_link_nie_w_naglowku){
let a=document.createElement('a');
a.innerHTML="artykuł";
a.setAttribute("href",StronicowyParser.kodowanie.EncodeHtml("/wiki/"+StronicowyParser.kodowanie.EncodeHtml(link_strona,false,true)));
a.setAttribute("title","Zobacz artykuł: "+link_strona);
let span=document.createElement('span');
span.innerHTML="| ";
span.setAttribute('class',"mw-editsection-bracket")
let czy_ma=$(mw_editsection_bracket).parent().hasClass('link');
if(czy_ma){
let rodzic_mw_editsection_bracket=mw_editsection_bracket.parentNode;
let span2=linkstrony_editsection.insertBefore(span, rodzic_mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}else{
let span2=linkstrony_editsection.insertBefore(span, mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}
}
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(linkstrony_editsection).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
}
for (let i=0;i<liczba_elementow;++i){
let tagclassname=tagclass[i];
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find("."+rozdzial_ksiazki);
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==tagclassname){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
if(tagclassname.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let class_element=tagclassname.getElementsByClassName('strona_subst');
let element;
if((class_element!==null)&&(class_element.length==1)){
element=class_element[0];
if(element.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let czy_link_nie_w_naglowku;
let strona_headline=tagclassname.getElementsByClassName('mw-headline');
let link_strona;
if((strona_headline!==null)&&(strona_headline.length==1)){
strona_a=strona_headline[0].getElementsByTagName('a');
if((strona_a!==null)&&(strona_a.length==1)){
link_strona=StronicowyParser.kodowanie.DecodeHtml(strona_a[0].getAttribute('href'));
if(link_strona!==null){
let re=/\/wiki\//g;
if(re.test(link_strona)){
link_strona=link_strona.substring(6,link_strona.length);
czy_link_nie_w_naglowku=false;
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}
}else{
link_strona=StronicowyParser.style.UsunStyle(element.innerHTML);
czy_link_nie_w_naglowku=true;
}
}
let re = /^[_\s]*$/g;
let dopasowanie = re.test(link_strona);
if(dopasowanie){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return;
};
link_strona=link_strona.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ").replace(/&/g,"&").replace(/ /g," ");
let hash=link_strona.replace(/^([^#]*)#(.*)$/,"$2").replace(/&/g,"&").replace(/ /g,"_");
/**/
let hn=strona_headline[0].parentNode;
if((hn===null)||(!hn.tagName.toUpperCase().match(/^H\d+$/g))){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
tab_section[i]=new Array(hn,link_strona,czy_link_nie_w_naglowku);
let strona=link_strona.match(/^[^#]*/g).toString();
async function PraceIteracyjne(tab_promise2){
await StronicowyParser.muteks.zablokuj();
if(/#/g.test(link_strona)){
let hash=link_strona.replace(/^([^#]*)#(.*)$/g,"$2");
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let numer=hn.innerHTML;
numer=parseInt(numer);
if(isNaN(numer)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return ;}
let tab_c=tab_section[c];
edit_action(numer,tab_c[1].match(/^[^#]*/g).toString(),tab_c[0],tab_c[1],tab_c[2]);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami){
if(!stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}else{
let uzupelniaj_sekcje_artykulow;
if(stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule){
uzupelniaj_sekcje_artykulow="tak";
}else{
uzupelniaj_sekcje_artykulow="";
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+link_strona+"|analiza=tak|uzupełniaj sekcje artykułów="+uzupelniaj_sekcje_artykulow+"|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
let a=headline.getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
a[0].setAttribute('title',stare);
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
}else{
edit_action(0,strona,hn,link_strona,czy_link_nie_w_naglowku);
if(stronasubst_aktualizowanie_nazw_artykulow){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+strona+"|analiza=tak|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceIteracyjne(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
/**/
tabs[i]=link_strona;
let czy=false;
for(let d in titles){
if(titles[d]==link_strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=link_strona;
}
if(tabstrona[link_strona]==null){
tabstrona[link_strona]=new Array();
}
let tab=tabstrona[link_strona];
let tablen=tab.length;
tabstrona[link_strona][tablen]=element;
}
async function PraceNaglowki(tab_promise2){
await StronicowyParser.muteks.zablokuj();
let promise;
if(element_strony==document){
let namespace=StronicowyParser.pageinfo.namespace;
let strona_podrecznika=((namespace!="")?(namespace+":"):"")+StronicowyParser.pageinfo.bookname;
promise=Promise.resolve(strona_podrecznika);
}else{
let zaan=$(element_strony).parents('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((zaan!==null)&&(zaan.length>0)){
let strona=zaan[0].getAttribute('nazwa_strony');
if(strona){
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](strona);
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}
if(tab_promise2){tab_promise2.push(true);}
promise.then(async (strona_podrecznika)=>{
await StronicowyParser.muteks.zablokuj();
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find(".klasa_nagłówka");
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)){
let g=0;
let tab_naglowka=new Array();
let tab_hn=new Array();
for(let z=0;z<klasa_naglowka.length;++z){
let pojedyncza_klasa_naglowka=klasa_naglowka[z];
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==pojedyncza_klasa_naglowka){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
let dana_klasa_naglowka=pojedyncza_klasa_naglowka.querySelector('.mw-headline');
if(dana_klasa_naglowka!==null){
if((dana_klasa_naglowka.parentNode!==null)&&(dana_klasa_naglowka.parentNode.tagName.toUpperCase().match(/^[Hh]\d+$/g))
&&(dana_klasa_naglowka.parentNode.parentNode!=null)&&(dana_klasa_naglowka.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&($(dana_klasa_naglowka.parentNode.parentNode).hasClass('klasa_nagłówka'))){
let naglowek=StronicowyParser.style.UsunStyle(dana_klasa_naglowka.innerHTML).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_").replace(/&/g,"&").replace(/ /g,"_");
let ww=1;
for(let x=0;x<tab_naglowka.length;++x){
if(tab_naglowka[x]==naglowek){
++ww;
}
}
naglowek=naglowek+((ww>1)?ww:"");
tab_naglowka[g]=naglowek;
tab_hn[g]=dana_klasa_naglowka.parentNode;
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, na stronie głównej podręcznika, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let nazwa_podrecznika=strona_podrecznika.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
let naglowek_sekcji_podrecznika=tab_naglowka[c].replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
edit_action(c+1,nazwa_podrecznika,tab_hn[c],nazwa_podrecznika+"#"+naglowek_sekcji_podrecznika,true);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();return;}
let headline=tab_hn[c].querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
++g;
}
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceNaglowki(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
function RozwazajNaglowki(){
let toc_fun=new StronicowyParser.ListaNodeTOC();
if((toc_fun.toc!==null)&&(toc_fun.toc.length>0)){
for(let w=0;w<toc_fun.toc.length;++w){
let czy_side_bar_toc=toc_fun.CzySideBarToc(toc_fun.toc[w]);
let ile_jest=0;
let li=toc_fun.toc[w].getElementsByTagName('li');
if((li!==null)&&(li.length>0)){
for(let dd=0;dd<li.length;++dd){
let element_li=li[dd];
let tocnumber;let toctext_wartosc;
if(czy_side_bar_toc){
tocnumber=element_li.querySelector('.sidebar-toc-numb');
if(!tocnumber){continue;}
toctext_wartosc=element_li.querySelector('.sidebar-toc-text').innerHTML.replace(new RegExp(StronicowyParser.wzor.BezZnakowSpecjalnych(tocnumber.outerHTML),"g"),"");
}else{
tocnumber=element_li.querySelector('.tocnumber');
toctext_wartosc=element_li.querySelector('.toctext').innerHTML;
}
if((tocnumber!==null)&&(toctext_wartosc!==null)){
let czy_jest=undefined;
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)&&(klasa_naglowka[ile_jest]!=null)){
let element_klasa_naglowka=klasa_naglowka[ile_jest];
let headline=element_klasa_naglowka.querySelector('.mw-headline');
if((headline!==null)
&&(headline.parentNode!==null)
&&(headline.parentNode.tagName.toUpperCase().match(/^H\d+$/))
&&(headline.parentNode.parentNode!==null)
&&(headline.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&(headline.parentNode.parentNode===element_klasa_naglowka)
){
let element_a;
if(czy_side_bar_toc){
element_a=tocnumber.parentNode.parentNode;
}else{
element_a=tocnumber.parentNode;
}
if(element_a.tagName.toUpperCase()=="A"){
let href=StronicowyParser.kodowanie.DecodeHtml(element_a.getAttribute('href'));
if(href!==null){
href=href.replace(/^#/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
let id_headline=headline.getAttribute('id');
if(id_headline!==null){
id_headline=id_headline.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
if(href!=id_headline){czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
if(czy_jest===undefined){ile_jest+=1;}
if((czy_jest===undefined)||(!czy_jest)){
let element_toctext=StronicowyParser.style.UsunStyle(toctext_wartosc).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ");
if(stronasubst_tablica_rozdzialow[element_toctext]==null){
stronasubst_tablica_rozdzialow[element_toctext]=new Array(tocnumber);
}else{
stronasubst_tablica_rozdzialow[element_toctext].push(tocnumber);
}
}
}
}
}
}
}
}
StronicowyParser.LimitTOC(true,stronasubst_ukrywaj_toc);
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],true,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(StronicowyParser.CzyWlaczycSideBarTOC(undefined,true))){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
RozwazajNaglowki();
if(stronasubst_mathml){
$("div.toc ul > li > a > span.toctext").toggleClass("mathml");
$("div.toc_spis ul > li > a > span.toctext").toggleClass("mathml");
$("div.mw-table-of-contents-container > nav.sidebar-toc ul > li > a > div.sidebar-toc-text").toggleClass("mathml");
}
function Strona(strona){
let strona_re=StronicowyParser.wzor.BezZnakowSpecjalnych(strona);
let re=new RegExp("^\\s*"+strona_re+"\\s*#","g");
return re;
}
function CzyArtykulyZNaglowkamiDlaStrony(re){
for(let s in titles){
let czy_hash=titles[s].match(re);
if(czy_hash){
return true;
}
}
return false;
}
let catlinks_fun=new StronicowyParser.LinkiKategorii();
await catlinks_fun.PobierzKategorieStrony();
for ( let t in titles ) {
let strona=titles[t].match(/^[^#]*/g).toString();
let szablon_artykulu;
let re_strona=Strona(strona);
let czy_naglowki=CzyArtykulyZNaglowkamiDlaStrony(re_strona);
if(!czy_naglowki){
szablon_artykulu="{{:"+strona+"}}";
}else{
/*---------------------------------*/
let rozdzial1=null;
let re=/^([^#]*)#(.*)$/g;
if(re.test(titles[t])){
rozdzial1=titles[t].replace(re,"$2");
rozdzial1=rozdzial1.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial1="";}
let rozdzial2=null;
let tit=titles[parseInt(t)+1];
if( tit && re.test(tit) && re_strona.test(tit)){
rozdzial2=tit.replace(re,"$2");
rozdzial2=rozdzial2.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial2="";}
/*---------------------------*/
szablon_artykulu="{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|TekstRozdziałuStrony|"+strona+"|"+rozdzial1+"|"+rozdzial2+"}}}}";
}
szablon_artykulu="{{PrzytnijTekst|"+szablon_artykulu+"}}";
if(stronasubst_opakuj_kategorie_ze_sortowaniem){
szablon_artykulu="{{OpakujKategorieZeSortowaniem|"+szablon_artykulu+"}}"
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text|categories',
title: strona,
text: "<div class=\"hn hn_"+t+"\">\n"+szablon_artykulu+"\n</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
catlinks_fun.AnalizaKategorii(data).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);}
WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2).then((result) => {}).catch((error) => {});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function CzyszczenieZZdarzeńTableOfContent(){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
}
}
CzyszczenieZZdarzeńTableOfContent();
let tab_promise2=new StronicowyParser.SugerowaneObiekty();
async function CzyStronaSubst(element,aktualna_strona,tab_promise2){
if(tab_promise2){tab_promise2.push(true);}
await StronicowyParser.muteks.zablokuj();
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: aktualna_strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.expandtemplates.wikitext;
if((wikikod!==null)&&(aktualna_strona!==null)){
if(tab_promise2){tab_promise2.push(true);}
StronaSubst(element,wikikod,aktualna_strona,tab_promise2).then((result) => {}).catch((error) => {});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
let aktualna_strona=StronicowyParser.pageinfo.fullname;
if(tab_promise2){tab_promise2.push(true,true);}
CzyStronaSubst(document,aktualna_strona,tab_promise2);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
function Progress(){
var c=document.createElement('div');
c.setAttribute("id","pasek_postępu")
c.setAttribute('style','line-height:1.2em;margin-top:-2px;margin-left:-2px;position:absolute;width:250px;height:70px;border:1px solid black;box-sizing:border-box;padding:5px;background-color:white;display:flex;flex-direction:column;box-sizing:border-box;');
var label=document.createElement('label');
label.setAttribute('for','file1');
label.innerHTML="<span style=\"color:blue;\">Ukończone wątki: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_0=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file1')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;');
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_1=c.appendChild(progress);
var label=document.createElement('label');
label.setAttribute('for','file2');
label.innerHTML="<span style=\"color:blue;\">Zwolnione blokaty: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_1=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file2')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;')
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_2=c.appendChild(progress);
function PozycjaXY(){
c.style.top=(window.scrollY+document.documentElement.clientHeight-parseFloat(c.style.height))+"px";
c.style.left=(window.scrollX+document.documentElement.clientWidth-parseFloat(c.style.width))+"px";
}
document.querySelector('body').appendChild(c);
PozycjaXY();
$(window).on('scroll',PozycjaXY);
$(window).on('resize',PozycjaXY);
return new Array(element_body_progress_1,element_body_progress_2,span_0,span_1);
}
var arr;
function __FUNKCJA(arr){
arr[0].setAttribute("value","0");
arr[1].setAttribute("value","0");
let dodatnie_0=tab_promise2.lengthPlus;
let ujemne_0=tab_promise2.lengthMinus;
let dodatnie_1=StronicowyParser.muteks.LiczbaBlokatPlus;
let ujemne_1=StronicowyParser.muteks.LiczbaBlokatMinus;
let postep_0=((dodatnie_0>0)?((ujemne_0/dodatnie_0)*100):0);
let postep_1=((dodatnie_1>0)?((ujemne_1/dodatnie_1)*100):0);
arr[0].setAttribute("value",postep_0);
arr[1].setAttribute("value",postep_1);
arr[2].innerHTML=(parseInt(postep_0*1000)/1000)+"%";
arr[3].innerHTML=(parseInt(postep_1*1000)/1000)+"%";
}
StronicowyParser.CzekajNaZakaczenie(tab_promise2,null,StronicowyParser.muteks,(tab_promise)=>{arr=Progress();__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);setTimeout(function(){let node_postep=document.getElementById('pasek_postępu');$(node_postep).remove();},2000);}).then(async (result) => {}).catch(()=>{});
};
StronicowyParser.WyswietlStronyKsiazki().then((result) => {}).catch((error) => {});
});
j56c7f22vep3oz62wwjowkbkypfk8qw
437327
437326
2022-08-09T17:32:23Z
Persino
2851
javascript
text/javascript
mw.loader.using('ext.gadget.gConfig', function(){
let globalne_zmienne=this;
StronicowyParser.WyswietlStronyKsiazki=async function(){
await StronicowyParser.muteks.zablokuj();
let stronasubst_latex=undefined;
let stronasubst_mathml=undefined;
let stronasubst_opakuj_kategorie_ze_sortowaniem=undefined;
let stronasubst_ukrywaj_toc=undefined;
let stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=undefined;
let stronasubst_aktualizowanie_nazw_artykulow=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=undefined;
let stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=undefined;
let stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=undefined;
let stronasubst_nie_usuwaj_styli=undefined;
let stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=undefined;
if((globalne_zmienne.gConfig!==undefined)&&(globalne_zmienne.gConfig.register!==undefined)&&(globalne_zmienne.gConfig.get!==undefined)){
mw.messages.set({
'StronaSubst-name': 'Strona zbiorcza',
'StronaSubst-description-page': 'Wikibooks:StronicowyParser/StronaSubst',
'StronaSubst-latex': 'Zamiast wzorów, wstaw tekst latexowy, w przeciwnym przypadku jest w formie LaTeX.',
'StronaSubst-mathml': 'Zamiast wzorów latexowych, wstaw je w formie znaczników MathML.',
'StronaSubst-opakuj_kategorie_ze_sortowaniem' : 'W stronach zbiorczych opakowuje kategorie, w postaci ramki, dla każdego artykułu z osobna.',
'StronaSubst-ukrywaj_toc' : "Ukrywa, począwszy od jakiegoś poziomu wszystkich tam spisów treści, na stronach zbiorczych.",
'StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach' : "Włącza dymki, nad linkami, w ładowanych dynamicznie stronach, tworząc je inteligentnymi.",
'StronaSubst-aktualizowanie_nazw_artykulow' : 'Aktualizuje na podstawie strony głównej nazwy tylko artykułów.',
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami' : "Aktualizuje sekcje poszczegónych rozdziałów artykułów ładowanych rozdziałami, domyślnie według sekcji w tych jednostkach.",
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika' : 'Aktualizuje, sekcje artykułów ładowanych rozdziałami, na podstawie strony głównej książki, a nie jego artykułów.',
'StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej' : 'Aktualizuje nagłówki strony głównej podręcznika na stronie zbiorczej.',
'StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule' : 'Aktualizuje, brakujące sekcje rozdziałów ładowanych rozdziałami artykułów, według wpisów na stronie głównej, na stronie zbiorczej.',
'StronaSubst-nie_usuwaj_styli' : 'Nie usuwa styli z nagłówków ładowanych stron.',
'StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst' : 'Rozwijaj szablony oznaczone szablonem SzablonSubst.',
});
gConfig.register('StronaSubst', {name: mw.msg('StronaSubst-name'), descriptionPage: mw.msg('StronaSubst-description-page')}, [
{
name: 'latex',
desc: mw.msg('StronaSubst-latex'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_latex']
},
{
name: 'mathml',
desc: mw.msg('StronaSubst-mathml'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_mathml']
},
{
name: 'opakuj_kategorie_ze_sortowaniem',
desc: mw.msg('StronaSubst-opakuj_kategorie_ze_sortowaniem'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_opakuj_kategorie_ze_sortowaniem']
},
{
name: 'ukrywaj_toc',
desc: mw.msg('StronaSubst-ukrywaj_toc'),
type: 'integer',
deflt: 0,
validation: function(n){ if((n<0)||(n==1)){ throw 'Wartość dotycząca poziomu ukrywania spisów treści jest nieprawidłowa!' }; return n; },
legacy: [window, 'wb_stronasubst_ukrywaj_toc']
},
{
name: 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach',
desc: mw.msg('StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach']
},
{
name: 'aktualizowanie_nazw_artykulow',
desc: mw.msg('StronaSubst-aktualizowanie_nazw_artykulow'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nazw_artykulow']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika']
},
{
name: 'aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej',
desc: mw.msg('StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej']
},
{
name: 'aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule',
desc: mw.msg('StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule']
},
{
name: 'nie_usuwaj_styli',
desc: mw.msg('StronaSubst-nie_usuwaj_styli'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_nie_usuwaj_styli']
},
{
name: 'rozwijaj_szablony_oznaczone_szablonem_szablonsubst',
desc: mw.msg('StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst']
},
]);
stronasubst_latex = (gConfig.get('StronaSubst', 'latex')==true);
stronasubst_mathml = (((gConfig.get('StronaSubst', 'mathml'))&&(!stronasubst_latex))==true);
stronasubst_opakuj_kategorie_ze_sortowaniem = (gConfig.get('StronaSubst', 'opakuj_kategorie_ze_sortowaniem')==true);
stronasubst_ukrywaj_toc = gConfig.get('StronaSubst', 'ukrywaj_toc');
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach = gConfig.get('StronaSubst', 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach');
stronasubst_aktualizowanie_nazw_artykulow = (gConfig.get('StronaSubst', 'aktualizowanie_nazw_artykulow')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami = (gConfig.get('StronaSubst', 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika = (gConfig.get('StronaSubst','aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika')==true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej = (gConfig.get('StronaSubst','aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej')==true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule = (gConfig.get('StronaSubst','aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule')==true);
stronasubst_nie_usuwaj_styli = (gConfig.get('StronaSubst','nie_usuwaj_styli')==true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst = (gConfig.get('StronaSubst','rozwijaj_szablony_oznaczone_szablonem_szablonsubst')==true);
}
//let podglad=document.querySelector('body:not(.action-view)');
//if(podglad){return;}
let stronasubst_tablica_tych_samych=new Array();
let stronasubst_tablica_rozdzialow=new Array();
let stronasubst_tablica_alternatywnych_nazw=new Array();
stronasubst_latex=((stronasubst_latex!==undefined)?stronasubst_latex:false);
stronasubst_mathml=((stronasubst_mathml!==undefined)?stronasubst_mathml:true);
stronasubst_opakuj_kategorie_ze_sortowaniem=((stronasubst_opakuj_kategorie_ze_sortowaniem!==undefined)?stronasubst_opakuj_kategorie_ze_sortowaniem:false);
stronasubst_ukrywaj_toc=parseInt(((stronasubst_ukrywaj_toc!==undefined)?stronasubst_ukrywaj_toc:0));
stronasubst_ukrywaj_toc=((!isNaN(stronasubst_ukrywaj_toc))?stronasubst_ukrywaj_toc:0);
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=((stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach!==undefined)?stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach:true);
stronasubst_aktualizowanie_nazw_artykulow=((stronasubst_aktualizowanie_nazw_artykulow!==undefined)?stronasubst_aktualizowanie_nazw_artykulow:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika:true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=((stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej!==undefined)?stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej:true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=((stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule!==undefined)?stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule:true);
stronasubst_nie_usuwaj_styli=((stronasubst_nie_usuwaj_styli!==undefined)?stronasubst_nie_usuwaj_styli:true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=((stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst!==undefined)?stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst:true);
async function AnalizujDalejSzablonSubst(element_strony,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let rozdzial_ksiazki="rozdział_książki";
let el=$(element_strony).find('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((el!==null)&&(el.length>0)){
for(let i=0;i<el.length;++i){
let element_el=el[i];
let ksiazka=element_el.querySelector("."+rozdzial_ksiazki);
if(ksiazka){
let nazwa_strony=element_el.getAttribute('nazwa_strony');
if(tab_promise2){tab_promise2.push(true);}
CzyStronaSubst(element_el,nazwa_strony,tab_promise2);
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
async function WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let title=data.parse.title;
let wikikod=data.parse.text['*'];
let strona_hash;
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let t=tab_uzyskane[0];
if(t==undefined){
console.log("Nie wykryto znacznika lsth_\d+.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
strona_hash=titles[t];
let selflink=document.createElement('div');
selflink.innerHTML=wikikod;
let czy_selflink=selflink.getElementsByClassName('selflink');
if((czy_selflink!==null)&&(czy_selflink.length==1)){
let elements=tabstrona[strona_hash];
let a=document.createElement('a');/*Tworzenie linku*/
a.setAttribute('href',StronicowyParser.kodowanie.EncodeHtml(title));
a.innerHTML=strona_hash;
let span=document.createElement('span');
span.appendChild(a);
span.setAttribute("class","niw link");/*Dodawanie klasy, by inny skript JS to przeanalizował jako link*/
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo(span);
}
for(let q in elements){
let element=elements[q];
element.innerHTML="";
element.appendChild(span);
$(element).wrap(function(){return "<strong></strong>";});
let przed=document.createTextNode("{{:");
let po=document.createTextNode("}}");
element.insertBefore(przed,element.firstChild);
element.appendChild(po);
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=tab_uzyskane[1].innerHTML;
let elements=tabstrona[strona_hash];
for(let q in elements){
let element=elements[q];
element.innerHTML=wikikod;
StronicowyParser.ZamienLinkiNaLinkiDoStronyAktualnej(element,title,titles);
}
StronicowyParser.AktualizujSpisTresciModuluStrony(elements,tabs,strona_hash,stronasubst_tablica_alternatywnych_nazw,stronasubst_tablica_tych_samych,stronasubst_tablica_rozdzialow,true,stronasubst_latex,stronasubst_mathml)
let strona_start=$(elements[0]).parents(".strona_start");
let rodzic=undefined;
if((strona_start!==null)&&(strona_start.length>0)){
rodzic=strona_start[0];
}
StronicowyParser.IndeksujHeadLine(rodzic);
StronicowyParser.PrzeIndeksujWszystkieTOC(rodzic,true);
for(let q in elements){
let element=elements[q];
async function ElementDalszychObliczen(element,tab_promise2){
await StronicowyParser.muteks.zablokuj(true);
StronicowyParser.PoprawRozdzialyStron(element);
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu(element,tab_promise2);//Funkcja jako gadżet do numerowania rozdziałów.
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element,tab_promise2);
}
if((StronicowyParser.szablony&&StronicowyParser.szablony.LadujSzablon)&&(stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst)){
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(element,title,titles,undefined,tab_promise).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(()=>{
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika(element);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
ElementDalszychObliczen(element,tab_promise2);
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function ToogleTableOfContainer(panel){
let id=panel.target;
let tagname=id.tagName.toUpperCase();
//console.log(czy_klasa,tagname,"TYTAN)";
if(tagname=="BUTTON"){
let czy_klasa_1=$(id).hasClass('sidebar-toc-toggle');
let czy_klasa_2=$(id).hasClass('vector-toc-collapse-button');
if(czy_klasa_1){
$(id).parent().children().last().each((i,element)=>{
let expanded=$(id).attr('aria-expanded');
if(expanded=="false"){
$(element).css('display',"block");
$(element).closest('li').addClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','true');
}else if(expanded=="true"){
$(element).css('display',"none");
$(element).closest('li').removeClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','false');
}
});
}else if(czy_klasa_2){
$(id).parents('#sidebar-toc-label').siblings('ul').each((i,element)=>{
let ukryj=$(element).css('display');
if(ukryj!="none"){
$(element).css('display',"none");
id.innerHTML=" pokaż ";
}else{
$(element).css('display',"block");
id.innerHTML=" ukryj "
}
});
}
}
}
let mutekstoogle=new StronicowyParser.Muteks();
async function ScrollTableOfContainer(){
await mutekstoogle.zablokuj();
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header').first().each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=rect_sticky.height-15;
});
let parser=document.querySelector('#mw-content-text .mw-parser-output');
if(parser){
let rect=parser.getBoundingClientRect();
if(rect.top>=height_sticky){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item').first().addClass('sidebar-toc-list-item-active');
mutekstoogle.odblokuj();
return;
}
}else{
mutekstoogle.odblokuj();
return;
}
var str=$('#mw-content-text .mw-parser-output').find('h1, h2, h3, h4, h5, h6');
if((str!==null)&&(str.length>0)){
var naglowek;
for(i=0;i<str.length;++i){
let element=str[i];
let rect=element.getBoundingClientRect();
if(rect.top>=height_sticky){
let mw_naglowek=element.querySelector('.mw-headline');
if(mw_naglowek){
let id_naglowek=mw_naglowek.getAttribute('id');
let tak=false;
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+id_naglowek){
let display=window.getComputedStyle(element, null).getPropertyValue('display');
if(display!="none"){
tak=true;
}
}
});
if(tak){
naglowek=id_naglowek;
break;
}
}
}
}
if(naglowek){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+naglowek){
$(element).addClass('sidebar-toc-list-item-active');
}
});
}
}
mutekstoogle.odblokuj();
}
async function StronaSubst(element_strony,wikikod,aktualna_strona,tab_promise2){
await StronicowyParser.muteks.zablokuj();
StronicowyParser.NaprawNaglowkiStrony(element_strony,true);
let czy_wikikod=wikikod.match(/^[_\s]*$/g);
let strona_start=$('#mw-content-text .mw-parser-output .strona_start');
function CzyWszystkieNaglowkiWewnatrzStronaStart(){
let pole=$('#mw-content-text .mw-parser-output').find('h1,h2,h3,h4,h5,h6');
for(let i=0;i<pole.length;++i){
let s=strona_start.find(pole[i]);
if((s===null)||(s.length==0)){
return false;
}
}
return true;
}
if(czy_wikikod){
StronicowyParser.muteks.odblokuj();
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyArtykulu)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyArtykulu(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
let czy_numerowac=StronicowyParser.CzyWlaczycSideBarTOC(undefined,true);
if(czy_numerowac){
czy_numerowac=false;
tab_promise.push(true);
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: StronicowyParser.pageinfo.fullname,
text: '{{#invoke:StronicowyParser|CzyStronęNumerować|'+StronicowyParser.pageinfo.fullname+'}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
let wikikod=data.expandtemplates.wikitext;
let czy_wikikod=/^[_\s]*$/g.test(wikikod);
if(!czy_wikikod){
czy_numerowac=true;
}
tab_promise.pop();
}).catch(()=>{tab_promise.pop();});
}
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
let tab_promise=new Array(true);
StronicowyParser.LimitTOC(czy_numerowac,stronasubst_ukrywaj_toc);
StronicowyParser.szablony.LadujSzablon(null,null,null,czy_numerowac,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true)
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],czy_numerowac,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(czy_numerowac)){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
return;
}
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(null,null,null,undefined,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async (result) => {
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
await StronicowyParser.CzekajNaZakaczenie(tab_promise).then(async (result) => {}).catch(()=>{});
await StronicowyParser.muteks.zablokuj();
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
let rozdzial_ksiazki="rozdział_książki";
let tagclass=element_strony.getElementsByClassName(rozdzial_ksiazki);
if(tagclass===null){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return null;
}
let liczba_elementow=tagclass.length;
if(liczba_elementow==0){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return null;
}
let titles=new Array();
let tabstrona=new Array();
let tabs=new Array();
let tab_section=new Array();
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element_strony,tab_promise2);
}
let tab_hn=new Array();
async function edit_action(numer,strona,hn,link_strona,czy_link_nie_w_naglowku){
await StronicowyParser.muteks.zablokuj();
let linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection===null){
let editsection=document.createElement('span');
editsection.classList.add('mw-editsection');
let bracket_poczatek=document.createElement('span');
bracket_poczatek.classList.add('mw-editsection-bracket')
bracket_poczatek.innerHTML="[";
let a=document.createElement('a');
a.setAttribute('href',"/w/index.php?title="+StronicowyParser.kodowanie.EncodeHtml(strona,false,true)+"&action=edit"+((numer>0)?("§ion="+numer):""));
a.setAttribute('title',"Edytuj artykuł: "+link_strona);
a.innerHTML="edytuj";
let bracket_koniec=document.createElement('span');
bracket_koniec.classList.add('mw-editsection-bracket')
bracket_koniec.innerHTML="]";
editsection.appendChild(bracket_poczatek);
editsection.appendChild(a)
editsection.appendChild(bracket_koniec);
hn.appendChild(editsection);
}
linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection!==null){
let mw_editsection_bracket=linkstrony_editsection.querySelector('a');
if(mw_editsection_bracket!==null){
if(czy_link_nie_w_naglowku){
let a=document.createElement('a');
a.innerHTML="artykuł";
a.setAttribute("href",StronicowyParser.kodowanie.EncodeHtml("/wiki/"+StronicowyParser.kodowanie.EncodeHtml(link_strona,false,true)));
a.setAttribute("title","Zobacz artykuł: "+link_strona);
let span=document.createElement('span');
span.innerHTML="| ";
span.setAttribute('class',"mw-editsection-bracket")
let czy_ma=$(mw_editsection_bracket).parent().hasClass('link');
if(czy_ma){
let rodzic_mw_editsection_bracket=mw_editsection_bracket.parentNode;
let span2=linkstrony_editsection.insertBefore(span, rodzic_mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}else{
let span2=linkstrony_editsection.insertBefore(span, mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}
}
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(linkstrony_editsection).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
}
for (let i=0;i<liczba_elementow;++i){
let tagclassname=tagclass[i];
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find("."+rozdzial_ksiazki);
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==tagclassname){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
if(tagclassname.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let class_element=tagclassname.getElementsByClassName('strona_subst');
let element;
if((class_element!==null)&&(class_element.length==1)){
element=class_element[0];
if(element.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let czy_link_nie_w_naglowku;
let strona_headline=tagclassname.getElementsByClassName('mw-headline');
let link_strona;
if((strona_headline!==null)&&(strona_headline.length==1)){
strona_a=strona_headline[0].getElementsByTagName('a');
if((strona_a!==null)&&(strona_a.length==1)){
link_strona=StronicowyParser.kodowanie.DecodeHtml(strona_a[0].getAttribute('href'));
if(link_strona!==null){
let re=/\/wiki\//g;
if(re.test(link_strona)){
link_strona=link_strona.substring(6,link_strona.length);
czy_link_nie_w_naglowku=false;
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}
}else{
link_strona=StronicowyParser.style.UsunStyle(element.innerHTML);
czy_link_nie_w_naglowku=true;
}
}
let re = /^[_\s]*$/g;
let dopasowanie = re.test(link_strona);
if(dopasowanie){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return;
};
link_strona=link_strona.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ").replace(/&/g,"&").replace(/ /g," ");
let hash=link_strona.replace(/^([^#]*)#(.*)$/,"$2").replace(/&/g,"&").replace(/ /g,"_");
/**/
let hn=strona_headline[0].parentNode;
if((hn===null)||(!hn.tagName.toUpperCase().match(/^H\d+$/g))){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
tab_section[i]=new Array(hn,link_strona,czy_link_nie_w_naglowku);
let strona=link_strona.match(/^[^#]*/g).toString();
async function PraceIteracyjne(tab_promise2){
await StronicowyParser.muteks.zablokuj();
if(/#/g.test(link_strona)){
let hash=link_strona.replace(/^([^#]*)#(.*)$/g,"$2");
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let numer=hn.innerHTML;
numer=parseInt(numer);
if(isNaN(numer)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return ;}
let tab_c=tab_section[c];
edit_action(numer,tab_c[1].match(/^[^#]*/g).toString(),tab_c[0],tab_c[1],tab_c[2]);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami){
if(!stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}else{
let uzupelniaj_sekcje_artykulow;
if(stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule){
uzupelniaj_sekcje_artykulow="tak";
}else{
uzupelniaj_sekcje_artykulow="";
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+link_strona+"|analiza=tak|uzupełniaj sekcje artykułów="+uzupelniaj_sekcje_artykulow+"|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
let a=headline.getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
a[0].setAttribute('title',stare);
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
}else{
edit_action(0,strona,hn,link_strona,czy_link_nie_w_naglowku);
if(stronasubst_aktualizowanie_nazw_artykulow){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+strona+"|analiza=tak|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceIteracyjne(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
/**/
tabs[i]=link_strona;
let czy=false;
for(let d in titles){
if(titles[d]==link_strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=link_strona;
}
if(tabstrona[link_strona]==null){
tabstrona[link_strona]=new Array();
}
let tab=tabstrona[link_strona];
let tablen=tab.length;
tabstrona[link_strona][tablen]=element;
}
async function PraceNaglowki(tab_promise2){
await StronicowyParser.muteks.zablokuj();
let promise;
if(element_strony==document){
let namespace=StronicowyParser.pageinfo.namespace;
let strona_podrecznika=((namespace!="")?(namespace+":"):"")+StronicowyParser.pageinfo.bookname;
promise=Promise.resolve(strona_podrecznika);
}else{
let zaan=$(element_strony).parents('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((zaan!==null)&&(zaan.length>0)){
let strona=zaan[0].getAttribute('nazwa_strony');
if(strona){
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](strona);
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}
if(tab_promise2){tab_promise2.push(true);}
promise.then(async (strona_podrecznika)=>{
await StronicowyParser.muteks.zablokuj();
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find(".klasa_nagłówka");
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)){
let g=0;
let tab_naglowka=new Array();
let tab_hn=new Array();
for(let z=0;z<klasa_naglowka.length;++z){
let pojedyncza_klasa_naglowka=klasa_naglowka[z];
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==pojedyncza_klasa_naglowka){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
let dana_klasa_naglowka=pojedyncza_klasa_naglowka.querySelector('.mw-headline');
if(dana_klasa_naglowka!==null){
if((dana_klasa_naglowka.parentNode!==null)&&(dana_klasa_naglowka.parentNode.tagName.toUpperCase().match(/^[Hh]\d+$/g))
&&(dana_klasa_naglowka.parentNode.parentNode!=null)&&(dana_klasa_naglowka.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&($(dana_klasa_naglowka.parentNode.parentNode).hasClass('klasa_nagłówka'))){
let naglowek=StronicowyParser.style.UsunStyle(dana_klasa_naglowka.innerHTML).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_").replace(/&/g,"&").replace(/ /g,"_");
let ww=1;
for(let x=0;x<tab_naglowka.length;++x){
if(tab_naglowka[x]==naglowek){
++ww;
}
}
naglowek=naglowek+((ww>1)?ww:"");
tab_naglowka[g]=naglowek;
tab_hn[g]=dana_klasa_naglowka.parentNode;
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, na stronie głównej podręcznika, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let nazwa_podrecznika=strona_podrecznika.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
let naglowek_sekcji_podrecznika=tab_naglowka[c].replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
edit_action(c+1,nazwa_podrecznika,tab_hn[c],nazwa_podrecznika+"#"+naglowek_sekcji_podrecznika,true);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();return;}
let headline=tab_hn[c].querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
++g;
}
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceNaglowki(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
function RozwazajNaglowki(){
let toc_fun=new StronicowyParser.ListaNodeTOC();
if((toc_fun.toc!==null)&&(toc_fun.toc.length>0)){
for(let w=0;w<toc_fun.toc.length;++w){
let czy_side_bar_toc=toc_fun.CzySideBarToc(toc_fun.toc[w]);
let ile_jest=0;
let li=toc_fun.toc[w].getElementsByTagName('li');
if((li!==null)&&(li.length>0)){
for(let dd=0;dd<li.length;++dd){
let element_li=li[dd];
let tocnumber;let toctext_wartosc;
if(czy_side_bar_toc){
tocnumber=element_li.querySelector('.sidebar-toc-numb');
if(!tocnumber){continue;}
toctext_wartosc=element_li.querySelector('.sidebar-toc-text').innerHTML.replace(new RegExp(StronicowyParser.wzor.BezZnakowSpecjalnych(tocnumber.outerHTML),"g"),"");
}else{
tocnumber=element_li.querySelector('.tocnumber');
toctext_wartosc=element_li.querySelector('.toctext').innerHTML;
}
if((tocnumber!==null)&&(toctext_wartosc!==null)){
let czy_jest=undefined;
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)&&(klasa_naglowka[ile_jest]!=null)){
let element_klasa_naglowka=klasa_naglowka[ile_jest];
let headline=element_klasa_naglowka.querySelector('.mw-headline');
if((headline!==null)
&&(headline.parentNode!==null)
&&(headline.parentNode.tagName.toUpperCase().match(/^H\d+$/))
&&(headline.parentNode.parentNode!==null)
&&(headline.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&(headline.parentNode.parentNode===element_klasa_naglowka)
){
let element_a;
if(czy_side_bar_toc){
element_a=tocnumber.parentNode.parentNode;
}else{
element_a=tocnumber.parentNode;
}
if(element_a.tagName.toUpperCase()=="A"){
let href=StronicowyParser.kodowanie.DecodeHtml(element_a.getAttribute('href'));
if(href!==null){
href=href.replace(/^#/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
let id_headline=headline.getAttribute('id');
if(id_headline!==null){
id_headline=id_headline.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
if(href!=id_headline){czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
if(czy_jest===undefined){ile_jest+=1;}
if((czy_jest===undefined)||(!czy_jest)){
let element_toctext=StronicowyParser.style.UsunStyle(toctext_wartosc).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ");
if(stronasubst_tablica_rozdzialow[element_toctext]==null){
stronasubst_tablica_rozdzialow[element_toctext]=new Array(tocnumber);
}else{
stronasubst_tablica_rozdzialow[element_toctext].push(tocnumber);
}
}
}
}
}
}
}
}
StronicowyParser.LimitTOC(true,stronasubst_ukrywaj_toc);
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],true,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(StronicowyParser.CzyWlaczycSideBarTOC(undefined,true))){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
RozwazajNaglowki();
if(stronasubst_mathml){
$("div.toc ul > li > a > span.toctext").toggleClass("mathml");
$("div.toc_spis ul > li > a > span.toctext").toggleClass("mathml");
$("div.mw-table-of-contents-container > nav.sidebar-toc ul > li > a > div.sidebar-toc-text").toggleClass("mathml");
}
function Strona(strona){
let strona_re=StronicowyParser.wzor.BezZnakowSpecjalnych(strona);
let re=new RegExp("^\\s*"+strona_re+"\\s*#","g");
return re;
}
function CzyArtykulyZNaglowkamiDlaStrony(re){
for(let s in titles){
let czy_hash=titles[s].match(re);
if(czy_hash){
return true;
}
}
return false;
}
let catlinks_fun=new StronicowyParser.LinkiKategorii();
await catlinks_fun.PobierzKategorieStrony();
for ( let t in titles ) {
let strona=titles[t].match(/^[^#]*/g).toString();
let szablon_artykulu;
let re_strona=Strona(strona);
let czy_naglowki=CzyArtykulyZNaglowkamiDlaStrony(re_strona);
if(!czy_naglowki){
szablon_artykulu="{{:"+strona+"}}";
}else{
/*---------------------------------*/
let rozdzial1=null;
let re=/^([^#]*)#(.*)$/g;
if(re.test(titles[t])){
rozdzial1=titles[t].replace(re,"$2");
rozdzial1=rozdzial1.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial1="";}
let rozdzial2=null;
let tit=titles[parseInt(t)+1];
if( tit && re.test(tit) && re_strona.test(tit)){
rozdzial2=tit.replace(re,"$2");
rozdzial2=rozdzial2.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial2="";}
/*---------------------------*/
szablon_artykulu="{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|TekstRozdziałuStrony|"+strona+"|"+rozdzial1+"|"+rozdzial2+"}}}}";
}
szablon_artykulu="{{PrzytnijTekst|"+szablon_artykulu+"}}";
if(stronasubst_opakuj_kategorie_ze_sortowaniem){
szablon_artykulu="{{OpakujKategorieZeSortowaniem|"+szablon_artykulu+"}}"
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text|categories',
title: strona,
text: "<div class=\"hn hn_"+t+"\">\n"+szablon_artykulu+"\n</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
catlinks_fun.AnalizaKategorii(data).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);}
WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2).then((result) => {}).catch((error) => {});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function CzyszczenieZZdarzeńTableOfContent(){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
}
}
CzyszczenieZZdarzeńTableOfContent();
let tab_promise2=new StronicowyParser.SugerowaneObiekty();
async function CzyStronaSubst(element,aktualna_strona,tab_promise2){
if(tab_promise2){tab_promise2.push(true);}
await StronicowyParser.muteks.zablokuj();
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: aktualna_strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.expandtemplates.wikitext;
if((wikikod!==null)&&(aktualna_strona!==null)){
if(tab_promise2){tab_promise2.push(true);}
StronaSubst(element,wikikod,aktualna_strona,tab_promise2).then((result) => {}).catch((error) => {});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
let aktualna_strona=StronicowyParser.pageinfo.fullname;
if(tab_promise2){tab_promise2.push(true,true);}
CzyStronaSubst(document,aktualna_strona,tab_promise2);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
function Progress(){
var c=document.createElement('div');
c.setAttribute("id","pasek_postępu")
c.setAttribute('style','line-height:1.2em;margin-top:-2px;margin-left:-2px;position:absolute;width:250px;height:75px;border:1px solid black;box-sizing:border-box;padding:5px;background-color:white;display:flex;flex-direction:column;box-sizing:border-box;');
var label=document.createElement('label');
label.setAttribute('for','file1');
label.innerHTML="<span style=\"color:blue;\">Ukończone wątki: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_0=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file1')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;');
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_1=c.appendChild(progress);
var label=document.createElement('label');
label.setAttribute('for','file2');
label.innerHTML="<span style=\"color:blue;\">Zwolnione blokaty: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_1=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file2')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;')
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_2=c.appendChild(progress);
function PozycjaXY(){
c.style.top=(window.scrollY+document.documentElement.clientHeight-parseFloat(c.style.height))+"px";
c.style.left=(window.scrollX+document.documentElement.clientWidth-parseFloat(c.style.width))+"px";
}
document.querySelector('body').appendChild(c);
PozycjaXY();
$(window).on('scroll',PozycjaXY);
$(window).on('resize',PozycjaXY);
return new Array(element_body_progress_1,element_body_progress_2,span_0,span_1);
}
var arr;
function __FUNKCJA(arr){
arr[0].setAttribute("value","0");
arr[1].setAttribute("value","0");
let dodatnie_0=tab_promise2.lengthPlus;
let ujemne_0=tab_promise2.lengthMinus;
let dodatnie_1=StronicowyParser.muteks.LiczbaBlokatPlus;
let ujemne_1=StronicowyParser.muteks.LiczbaBlokatMinus;
let postep_0=((dodatnie_0>0)?((ujemne_0/dodatnie_0)*100):0);
let postep_1=((dodatnie_1>0)?((ujemne_1/dodatnie_1)*100):0);
arr[0].setAttribute("value",postep_0);
arr[1].setAttribute("value",postep_1);
arr[2].innerHTML=(parseInt(postep_0*1000)/1000)+"%";
arr[3].innerHTML=(parseInt(postep_1*1000)/1000)+"%";
}
StronicowyParser.CzekajNaZakaczenie(tab_promise2,null,StronicowyParser.muteks,(tab_promise)=>{arr=Progress();__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);setTimeout(function(){let node_postep=document.getElementById('pasek_postępu');$(node_postep).remove();},2000);}).then(async (result) => {}).catch(()=>{});
};
StronicowyParser.WyswietlStronyKsiazki().then((result) => {}).catch((error) => {});
});
fszzf3qgx7iphvcibzygl4cy8bi0b0o
437328
437327
2022-08-09T17:35:03Z
Persino
2851
javascript
text/javascript
mw.loader.using('ext.gadget.gConfig', function(){
let globalne_zmienne=this;
StronicowyParser.WyswietlStronyKsiazki=async function(){
await StronicowyParser.muteks.zablokuj();
let stronasubst_latex=undefined;
let stronasubst_mathml=undefined;
let stronasubst_opakuj_kategorie_ze_sortowaniem=undefined;
let stronasubst_ukrywaj_toc=undefined;
let stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=undefined;
let stronasubst_aktualizowanie_nazw_artykulow=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=undefined;
let stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=undefined;
let stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=undefined;
let stronasubst_nie_usuwaj_styli=undefined;
let stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=undefined;
if((globalne_zmienne.gConfig!==undefined)&&(globalne_zmienne.gConfig.register!==undefined)&&(globalne_zmienne.gConfig.get!==undefined)){
mw.messages.set({
'StronaSubst-name': 'Strona zbiorcza',
'StronaSubst-description-page': 'Wikibooks:StronicowyParser/StronaSubst',
'StronaSubst-latex': 'Zamiast wzorów, wstaw tekst latexowy, w przeciwnym przypadku jest w formie LaTeX.',
'StronaSubst-mathml': 'Zamiast wzorów latexowych, wstaw je w formie znaczników MathML.',
'StronaSubst-opakuj_kategorie_ze_sortowaniem' : 'W stronach zbiorczych opakowuje kategorie, w postaci ramki, dla każdego artykułu z osobna.',
'StronaSubst-ukrywaj_toc' : "Ukrywa, począwszy od jakiegoś poziomu wszystkich tam spisów treści, na stronach zbiorczych.",
'StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach' : "Włącza dymki, nad linkami, w ładowanych dynamicznie stronach, tworząc je inteligentnymi.",
'StronaSubst-aktualizowanie_nazw_artykulow' : 'Aktualizuje na podstawie strony głównej nazwy tylko artykułów.',
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami' : "Aktualizuje sekcje poszczegónych rozdziałów artykułów ładowanych rozdziałami, domyślnie według sekcji w tych jednostkach.",
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika' : 'Aktualizuje, sekcje artykułów ładowanych rozdziałami, na podstawie strony głównej książki, a nie jego artykułów.',
'StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej' : 'Aktualizuje nagłówki strony głównej podręcznika na stronie zbiorczej.',
'StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule' : 'Aktualizuje, brakujące sekcje rozdziałów ładowanych rozdziałami artykułów, według wpisów na stronie głównej, na stronie zbiorczej.',
'StronaSubst-nie_usuwaj_styli' : 'Nie usuwa styli z nagłówków ładowanych stron.',
'StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst' : 'Rozwijaj szablony oznaczone szablonem SzablonSubst.',
});
gConfig.register('StronaSubst', {name: mw.msg('StronaSubst-name'), descriptionPage: mw.msg('StronaSubst-description-page')}, [
{
name: 'latex',
desc: mw.msg('StronaSubst-latex'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_latex']
},
{
name: 'mathml',
desc: mw.msg('StronaSubst-mathml'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_mathml']
},
{
name: 'opakuj_kategorie_ze_sortowaniem',
desc: mw.msg('StronaSubst-opakuj_kategorie_ze_sortowaniem'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_opakuj_kategorie_ze_sortowaniem']
},
{
name: 'ukrywaj_toc',
desc: mw.msg('StronaSubst-ukrywaj_toc'),
type: 'integer',
deflt: 0,
validation: function(n){ if((n<0)||(n==1)){ throw 'Wartość dotycząca poziomu ukrywania spisów treści jest nieprawidłowa!' }; return n; },
legacy: [window, 'wb_stronasubst_ukrywaj_toc']
},
{
name: 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach',
desc: mw.msg('StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach']
},
{
name: 'aktualizowanie_nazw_artykulow',
desc: mw.msg('StronaSubst-aktualizowanie_nazw_artykulow'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nazw_artykulow']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika']
},
{
name: 'aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej',
desc: mw.msg('StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej']
},
{
name: 'aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule',
desc: mw.msg('StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule']
},
{
name: 'nie_usuwaj_styli',
desc: mw.msg('StronaSubst-nie_usuwaj_styli'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_nie_usuwaj_styli']
},
{
name: 'rozwijaj_szablony_oznaczone_szablonem_szablonsubst',
desc: mw.msg('StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst']
},
]);
stronasubst_latex = (gConfig.get('StronaSubst', 'latex')==true);
stronasubst_mathml = (((gConfig.get('StronaSubst', 'mathml'))&&(!stronasubst_latex))==true);
stronasubst_opakuj_kategorie_ze_sortowaniem = (gConfig.get('StronaSubst', 'opakuj_kategorie_ze_sortowaniem')==true);
stronasubst_ukrywaj_toc = gConfig.get('StronaSubst', 'ukrywaj_toc');
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach = gConfig.get('StronaSubst', 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach');
stronasubst_aktualizowanie_nazw_artykulow = (gConfig.get('StronaSubst', 'aktualizowanie_nazw_artykulow')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami = (gConfig.get('StronaSubst', 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika = (gConfig.get('StronaSubst','aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika')==true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej = (gConfig.get('StronaSubst','aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej')==true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule = (gConfig.get('StronaSubst','aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule')==true);
stronasubst_nie_usuwaj_styli = (gConfig.get('StronaSubst','nie_usuwaj_styli')==true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst = (gConfig.get('StronaSubst','rozwijaj_szablony_oznaczone_szablonem_szablonsubst')==true);
}
//let podglad=document.querySelector('body:not(.action-view)');
//if(podglad){return;}
let stronasubst_tablica_tych_samych=new Array();
let stronasubst_tablica_rozdzialow=new Array();
let stronasubst_tablica_alternatywnych_nazw=new Array();
stronasubst_latex=((stronasubst_latex!==undefined)?stronasubst_latex:false);
stronasubst_mathml=((stronasubst_mathml!==undefined)?stronasubst_mathml:true);
stronasubst_opakuj_kategorie_ze_sortowaniem=((stronasubst_opakuj_kategorie_ze_sortowaniem!==undefined)?stronasubst_opakuj_kategorie_ze_sortowaniem:false);
stronasubst_ukrywaj_toc=parseInt(((stronasubst_ukrywaj_toc!==undefined)?stronasubst_ukrywaj_toc:0));
stronasubst_ukrywaj_toc=((!isNaN(stronasubst_ukrywaj_toc))?stronasubst_ukrywaj_toc:0);
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=((stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach!==undefined)?stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach:true);
stronasubst_aktualizowanie_nazw_artykulow=((stronasubst_aktualizowanie_nazw_artykulow!==undefined)?stronasubst_aktualizowanie_nazw_artykulow:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika:true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=((stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej!==undefined)?stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej:true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=((stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule!==undefined)?stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule:true);
stronasubst_nie_usuwaj_styli=((stronasubst_nie_usuwaj_styli!==undefined)?stronasubst_nie_usuwaj_styli:true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=((stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst!==undefined)?stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst:true);
async function AnalizujDalejSzablonSubst(element_strony,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let rozdzial_ksiazki="rozdział_książki";
let el=$(element_strony).find('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((el!==null)&&(el.length>0)){
for(let i=0;i<el.length;++i){
let element_el=el[i];
let ksiazka=element_el.querySelector("."+rozdzial_ksiazki);
if(ksiazka){
let nazwa_strony=element_el.getAttribute('nazwa_strony');
if(tab_promise2){tab_promise2.push(true);}
CzyStronaSubst(element_el,nazwa_strony,tab_promise2);
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
async function WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let title=data.parse.title;
let wikikod=data.parse.text['*'];
let strona_hash;
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let t=tab_uzyskane[0];
if(t==undefined){
console.log("Nie wykryto znacznika lsth_\d+.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
strona_hash=titles[t];
let selflink=document.createElement('div');
selflink.innerHTML=wikikod;
let czy_selflink=selflink.getElementsByClassName('selflink');
if((czy_selflink!==null)&&(czy_selflink.length==1)){
let elements=tabstrona[strona_hash];
let a=document.createElement('a');/*Tworzenie linku*/
a.setAttribute('href',StronicowyParser.kodowanie.EncodeHtml(title));
a.innerHTML=strona_hash;
let span=document.createElement('span');
span.appendChild(a);
span.setAttribute("class","niw link");/*Dodawanie klasy, by inny skript JS to przeanalizował jako link*/
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo(span);
}
for(let q in elements){
let element=elements[q];
element.innerHTML="";
element.appendChild(span);
$(element).wrap(function(){return "<strong></strong>";});
let przed=document.createTextNode("{{:");
let po=document.createTextNode("}}");
element.insertBefore(przed,element.firstChild);
element.appendChild(po);
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=tab_uzyskane[1].innerHTML;
let elements=tabstrona[strona_hash];
for(let q in elements){
let element=elements[q];
element.innerHTML=wikikod;
StronicowyParser.ZamienLinkiNaLinkiDoStronyAktualnej(element,title,titles);
}
StronicowyParser.AktualizujSpisTresciModuluStrony(elements,tabs,strona_hash,stronasubst_tablica_alternatywnych_nazw,stronasubst_tablica_tych_samych,stronasubst_tablica_rozdzialow,true,stronasubst_latex,stronasubst_mathml)
let strona_start=$(elements[0]).parents(".strona_start");
let rodzic=undefined;
if((strona_start!==null)&&(strona_start.length>0)){
rodzic=strona_start[0];
}
StronicowyParser.IndeksujHeadLine(rodzic);
StronicowyParser.PrzeIndeksujWszystkieTOC(rodzic,true);
for(let q in elements){
let element=elements[q];
async function ElementDalszychObliczen(element,tab_promise2){
await StronicowyParser.muteks.zablokuj(true);
StronicowyParser.PoprawRozdzialyStron(element);
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu(element,tab_promise2);//Funkcja jako gadżet do numerowania rozdziałów.
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element,tab_promise2);
}
if((StronicowyParser.szablony&&StronicowyParser.szablony.LadujSzablon)&&(stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst)){
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(element,title,titles,undefined,tab_promise).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(()=>{
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika(element);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
ElementDalszychObliczen(element,tab_promise2);
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function ToogleTableOfContainer(panel){
let id=panel.target;
let tagname=id.tagName.toUpperCase();
//console.log(czy_klasa,tagname,"TYTAN)";
if(tagname=="BUTTON"){
let czy_klasa_1=$(id).hasClass('sidebar-toc-toggle');
let czy_klasa_2=$(id).hasClass('vector-toc-collapse-button');
if(czy_klasa_1){
$(id).parent().children().last().each((i,element)=>{
let expanded=$(id).attr('aria-expanded');
if(expanded=="false"){
$(element).css('display',"block");
$(element).closest('li').addClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','true');
}else if(expanded=="true"){
$(element).css('display',"none");
$(element).closest('li').removeClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','false');
}
});
}else if(czy_klasa_2){
$(id).parents('#sidebar-toc-label').siblings('ul').each((i,element)=>{
let ukryj=$(element).css('display');
if(ukryj!="none"){
$(element).css('display',"none");
id.innerHTML=" pokaż ";
}else{
$(element).css('display',"block");
id.innerHTML=" ukryj "
}
});
}
}
}
let mutekstoogle=new StronicowyParser.Muteks();
async function ScrollTableOfContainer(){
await mutekstoogle.zablokuj();
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header').first().each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=rect_sticky.height-15;
});
let parser=document.querySelector('#mw-content-text .mw-parser-output');
if(parser){
let rect=parser.getBoundingClientRect();
if(rect.top>=height_sticky){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item').first().addClass('sidebar-toc-list-item-active');
mutekstoogle.odblokuj();
return;
}
}else{
mutekstoogle.odblokuj();
return;
}
var str=$('#mw-content-text .mw-parser-output').find('h1, h2, h3, h4, h5, h6');
if((str!==null)&&(str.length>0)){
var naglowek;
for(i=0;i<str.length;++i){
let element=str[i];
let rect=element.getBoundingClientRect();
if(rect.top>=height_sticky){
let mw_naglowek=element.querySelector('.mw-headline');
if(mw_naglowek){
let id_naglowek=mw_naglowek.getAttribute('id');
let tak=false;
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+id_naglowek){
let display=window.getComputedStyle(element, null).getPropertyValue('display');
if(display!="none"){
tak=true;
}
}
});
if(tak){
naglowek=id_naglowek;
break;
}
}
}
}
if(naglowek){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+naglowek){
$(element).addClass('sidebar-toc-list-item-active');
}
});
}
}
mutekstoogle.odblokuj();
}
async function StronaSubst(element_strony,wikikod,aktualna_strona,tab_promise2){
await StronicowyParser.muteks.zablokuj();
StronicowyParser.NaprawNaglowkiStrony(element_strony,true);
let czy_wikikod=wikikod.match(/^[_\s]*$/g);
let strona_start=$('#mw-content-text .mw-parser-output .strona_start');
function CzyWszystkieNaglowkiWewnatrzStronaStart(){
let pole=$('#mw-content-text .mw-parser-output').find('h1,h2,h3,h4,h5,h6');
for(let i=0;i<pole.length;++i){
let s=strona_start.find(pole[i]);
if((s===null)||(s.length==0)){
return false;
}
}
return true;
}
if(czy_wikikod){
StronicowyParser.muteks.odblokuj();
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyArtykulu)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyArtykulu(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
let czy_numerowac=StronicowyParser.CzyWlaczycSideBarTOC(undefined,true);
if(czy_numerowac){
czy_numerowac=false;
tab_promise.push(true);
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: StronicowyParser.pageinfo.fullname,
text: '{{#invoke:StronicowyParser|CzyStronęNumerować|'+StronicowyParser.pageinfo.fullname+'}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
let wikikod=data.expandtemplates.wikitext;
let czy_wikikod=/^[_\s]*$/g.test(wikikod);
if(!czy_wikikod){
czy_numerowac=true;
}
tab_promise.pop();
}).catch(()=>{tab_promise.pop();});
}
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
let tab_promise=new Array(true);
StronicowyParser.LimitTOC(czy_numerowac,stronasubst_ukrywaj_toc);
StronicowyParser.szablony.LadujSzablon(null,null,null,czy_numerowac,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true)
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],czy_numerowac,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(czy_numerowac)){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
return;
}
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(null,null,null,undefined,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async (result) => {
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
await StronicowyParser.CzekajNaZakaczenie(tab_promise).then(async (result) => {}).catch(()=>{});
await StronicowyParser.muteks.zablokuj();
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
let rozdzial_ksiazki="rozdział_książki";
let tagclass=element_strony.getElementsByClassName(rozdzial_ksiazki);
if(tagclass===null){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return null;
}
let liczba_elementow=tagclass.length;
if(liczba_elementow==0){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return null;
}
let titles=new Array();
let tabstrona=new Array();
let tabs=new Array();
let tab_section=new Array();
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element_strony,tab_promise2);
}
let tab_hn=new Array();
async function edit_action(numer,strona,hn,link_strona,czy_link_nie_w_naglowku){
await StronicowyParser.muteks.zablokuj();
let linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection===null){
let editsection=document.createElement('span');
editsection.classList.add('mw-editsection');
let bracket_poczatek=document.createElement('span');
bracket_poczatek.classList.add('mw-editsection-bracket')
bracket_poczatek.innerHTML="[";
let a=document.createElement('a');
a.setAttribute('href',"/w/index.php?title="+StronicowyParser.kodowanie.EncodeHtml(strona,false,true)+"&action=edit"+((numer>0)?("§ion="+numer):""));
a.setAttribute('title',"Edytuj artykuł: "+link_strona);
a.innerHTML="edytuj";
let bracket_koniec=document.createElement('span');
bracket_koniec.classList.add('mw-editsection-bracket')
bracket_koniec.innerHTML="]";
editsection.appendChild(bracket_poczatek);
editsection.appendChild(a)
editsection.appendChild(bracket_koniec);
hn.appendChild(editsection);
}
linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection!==null){
let mw_editsection_bracket=linkstrony_editsection.querySelector('a');
if(mw_editsection_bracket!==null){
if(czy_link_nie_w_naglowku){
let a=document.createElement('a');
a.innerHTML="artykuł";
a.setAttribute("href",StronicowyParser.kodowanie.EncodeHtml("/wiki/"+StronicowyParser.kodowanie.EncodeHtml(link_strona,false,true)));
a.setAttribute("title","Zobacz artykuł: "+link_strona);
let span=document.createElement('span');
span.innerHTML="| ";
span.setAttribute('class',"mw-editsection-bracket")
let czy_ma=$(mw_editsection_bracket).parent().hasClass('link');
if(czy_ma){
let rodzic_mw_editsection_bracket=mw_editsection_bracket.parentNode;
let span2=linkstrony_editsection.insertBefore(span, rodzic_mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}else{
let span2=linkstrony_editsection.insertBefore(span, mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}
}
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(linkstrony_editsection).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
}
for (let i=0;i<liczba_elementow;++i){
let tagclassname=tagclass[i];
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find("."+rozdzial_ksiazki);
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==tagclassname){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
if(tagclassname.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let class_element=tagclassname.getElementsByClassName('strona_subst');
let element;
if((class_element!==null)&&(class_element.length==1)){
element=class_element[0];
if(element.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let czy_link_nie_w_naglowku;
let strona_headline=tagclassname.getElementsByClassName('mw-headline');
let link_strona;
if((strona_headline!==null)&&(strona_headline.length==1)){
strona_a=strona_headline[0].getElementsByTagName('a');
if((strona_a!==null)&&(strona_a.length==1)){
link_strona=StronicowyParser.kodowanie.DecodeHtml(strona_a[0].getAttribute('href'));
if(link_strona!==null){
let re=/\/wiki\//g;
if(re.test(link_strona)){
link_strona=link_strona.substring(6,link_strona.length);
czy_link_nie_w_naglowku=false;
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}
}else{
link_strona=StronicowyParser.style.UsunStyle(element.innerHTML);
czy_link_nie_w_naglowku=true;
}
}
let re = /^[_\s]*$/g;
let dopasowanie = re.test(link_strona);
if(dopasowanie){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return;
};
link_strona=link_strona.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ").replace(/&/g,"&").replace(/ /g," ");
let hash=link_strona.replace(/^([^#]*)#(.*)$/,"$2").replace(/&/g,"&").replace(/ /g,"_");
/**/
let hn=strona_headline[0].parentNode;
if((hn===null)||(!hn.tagName.toUpperCase().match(/^H\d+$/g))){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
tab_section[i]=new Array(hn,link_strona,czy_link_nie_w_naglowku);
let strona=link_strona.match(/^[^#]*/g).toString();
async function PraceIteracyjne(tab_promise2){
await StronicowyParser.muteks.zablokuj();
if(/#/g.test(link_strona)){
let hash=link_strona.replace(/^([^#]*)#(.*)$/g,"$2");
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let numer=hn.innerHTML;
numer=parseInt(numer);
if(isNaN(numer)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return ;}
let tab_c=tab_section[c];
edit_action(numer,tab_c[1].match(/^[^#]*/g).toString(),tab_c[0],tab_c[1],tab_c[2]);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami){
if(!stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}else{
let uzupelniaj_sekcje_artykulow;
if(stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule){
uzupelniaj_sekcje_artykulow="tak";
}else{
uzupelniaj_sekcje_artykulow="";
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+link_strona+"|analiza=tak|uzupełniaj sekcje artykułów="+uzupelniaj_sekcje_artykulow+"|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
let a=headline.getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
a[0].setAttribute('title',stare);
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
}else{
edit_action(0,strona,hn,link_strona,czy_link_nie_w_naglowku);
if(stronasubst_aktualizowanie_nazw_artykulow){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+strona+"|analiza=tak|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceIteracyjne(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
/**/
tabs[i]=link_strona;
let czy=false;
for(let d in titles){
if(titles[d]==link_strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=link_strona;
}
if(tabstrona[link_strona]==null){
tabstrona[link_strona]=new Array();
}
let tab=tabstrona[link_strona];
let tablen=tab.length;
tabstrona[link_strona][tablen]=element;
}
async function PraceNaglowki(tab_promise2){
await StronicowyParser.muteks.zablokuj();
let promise;
if(element_strony==document){
let namespace=StronicowyParser.pageinfo.namespace;
let strona_podrecznika=((namespace!="")?(namespace+":"):"")+StronicowyParser.pageinfo.bookname;
promise=Promise.resolve(strona_podrecznika);
}else{
let zaan=$(element_strony).parents('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((zaan!==null)&&(zaan.length>0)){
let strona=zaan[0].getAttribute('nazwa_strony');
if(strona){
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](strona);
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}
if(tab_promise2){tab_promise2.push(true);}
promise.then(async (strona_podrecznika)=>{
await StronicowyParser.muteks.zablokuj();
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find(".klasa_nagłówka");
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)){
let g=0;
let tab_naglowka=new Array();
let tab_hn=new Array();
for(let z=0;z<klasa_naglowka.length;++z){
let pojedyncza_klasa_naglowka=klasa_naglowka[z];
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==pojedyncza_klasa_naglowka){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
let dana_klasa_naglowka=pojedyncza_klasa_naglowka.querySelector('.mw-headline');
if(dana_klasa_naglowka!==null){
if((dana_klasa_naglowka.parentNode!==null)&&(dana_klasa_naglowka.parentNode.tagName.toUpperCase().match(/^[Hh]\d+$/g))
&&(dana_klasa_naglowka.parentNode.parentNode!=null)&&(dana_klasa_naglowka.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&($(dana_klasa_naglowka.parentNode.parentNode).hasClass('klasa_nagłówka'))){
let naglowek=StronicowyParser.style.UsunStyle(dana_klasa_naglowka.innerHTML).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_").replace(/&/g,"&").replace(/ /g,"_");
let ww=1;
for(let x=0;x<tab_naglowka.length;++x){
if(tab_naglowka[x]==naglowek){
++ww;
}
}
naglowek=naglowek+((ww>1)?ww:"");
tab_naglowka[g]=naglowek;
tab_hn[g]=dana_klasa_naglowka.parentNode;
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, na stronie głównej podręcznika, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let nazwa_podrecznika=strona_podrecznika.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
let naglowek_sekcji_podrecznika=tab_naglowka[c].replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
edit_action(c+1,nazwa_podrecznika,tab_hn[c],nazwa_podrecznika+"#"+naglowek_sekcji_podrecznika,true);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();return;}
let headline=tab_hn[c].querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
++g;
}
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceNaglowki(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
function RozwazajNaglowki(){
let toc_fun=new StronicowyParser.ListaNodeTOC();
if((toc_fun.toc!==null)&&(toc_fun.toc.length>0)){
for(let w=0;w<toc_fun.toc.length;++w){
let czy_side_bar_toc=toc_fun.CzySideBarToc(toc_fun.toc[w]);
let ile_jest=0;
let li=toc_fun.toc[w].getElementsByTagName('li');
if((li!==null)&&(li.length>0)){
for(let dd=0;dd<li.length;++dd){
let element_li=li[dd];
let tocnumber;let toctext_wartosc;
if(czy_side_bar_toc){
tocnumber=element_li.querySelector('.sidebar-toc-numb');
if(!tocnumber){continue;}
toctext_wartosc=element_li.querySelector('.sidebar-toc-text').innerHTML.replace(new RegExp(StronicowyParser.wzor.BezZnakowSpecjalnych(tocnumber.outerHTML),"g"),"");
}else{
tocnumber=element_li.querySelector('.tocnumber');
toctext_wartosc=element_li.querySelector('.toctext').innerHTML;
}
if((tocnumber!==null)&&(toctext_wartosc!==null)){
let czy_jest=undefined;
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)&&(klasa_naglowka[ile_jest]!=null)){
let element_klasa_naglowka=klasa_naglowka[ile_jest];
let headline=element_klasa_naglowka.querySelector('.mw-headline');
if((headline!==null)
&&(headline.parentNode!==null)
&&(headline.parentNode.tagName.toUpperCase().match(/^H\d+$/))
&&(headline.parentNode.parentNode!==null)
&&(headline.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&(headline.parentNode.parentNode===element_klasa_naglowka)
){
let element_a;
if(czy_side_bar_toc){
element_a=tocnumber.parentNode.parentNode;
}else{
element_a=tocnumber.parentNode;
}
if(element_a.tagName.toUpperCase()=="A"){
let href=StronicowyParser.kodowanie.DecodeHtml(element_a.getAttribute('href'));
if(href!==null){
href=href.replace(/^#/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
let id_headline=headline.getAttribute('id');
if(id_headline!==null){
id_headline=id_headline.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
if(href!=id_headline){czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
if(czy_jest===undefined){ile_jest+=1;}
if((czy_jest===undefined)||(!czy_jest)){
let element_toctext=StronicowyParser.style.UsunStyle(toctext_wartosc).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ");
if(stronasubst_tablica_rozdzialow[element_toctext]==null){
stronasubst_tablica_rozdzialow[element_toctext]=new Array(tocnumber);
}else{
stronasubst_tablica_rozdzialow[element_toctext].push(tocnumber);
}
}
}
}
}
}
}
}
StronicowyParser.LimitTOC(true,stronasubst_ukrywaj_toc);
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],true,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(StronicowyParser.CzyWlaczycSideBarTOC(undefined,true))){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
RozwazajNaglowki();
if(stronasubst_mathml){
$("div.toc ul > li > a > span.toctext").toggleClass("mathml");
$("div.toc_spis ul > li > a > span.toctext").toggleClass("mathml");
$("div.mw-table-of-contents-container > nav.sidebar-toc ul > li > a > div.sidebar-toc-text").toggleClass("mathml");
}
function Strona(strona){
let strona_re=StronicowyParser.wzor.BezZnakowSpecjalnych(strona);
let re=new RegExp("^\\s*"+strona_re+"\\s*#","g");
return re;
}
function CzyArtykulyZNaglowkamiDlaStrony(re){
for(let s in titles){
let czy_hash=titles[s].match(re);
if(czy_hash){
return true;
}
}
return false;
}
let catlinks_fun=new StronicowyParser.LinkiKategorii();
await catlinks_fun.PobierzKategorieStrony();
for ( let t in titles ) {
let strona=titles[t].match(/^[^#]*/g).toString();
let szablon_artykulu;
let re_strona=Strona(strona);
let czy_naglowki=CzyArtykulyZNaglowkamiDlaStrony(re_strona);
if(!czy_naglowki){
szablon_artykulu="{{:"+strona+"}}";
}else{
/*---------------------------------*/
let rozdzial1=null;
let re=/^([^#]*)#(.*)$/g;
if(re.test(titles[t])){
rozdzial1=titles[t].replace(re,"$2");
rozdzial1=rozdzial1.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial1="";}
let rozdzial2=null;
let tit=titles[parseInt(t)+1];
if( tit && re.test(tit) && re_strona.test(tit)){
rozdzial2=tit.replace(re,"$2");
rozdzial2=rozdzial2.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial2="";}
/*---------------------------*/
szablon_artykulu="{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|TekstRozdziałuStrony|"+strona+"|"+rozdzial1+"|"+rozdzial2+"}}}}";
}
szablon_artykulu="{{PrzytnijTekst|"+szablon_artykulu+"}}";
if(stronasubst_opakuj_kategorie_ze_sortowaniem){
szablon_artykulu="{{OpakujKategorieZeSortowaniem|"+szablon_artykulu+"}}"
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text|categories',
title: strona,
text: "<div class=\"hn hn_"+t+"\">\n"+szablon_artykulu+"\n</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
catlinks_fun.AnalizaKategorii(data).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);}
WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2).then((result) => {}).catch((error) => {});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function CzyszczenieZZdarzeńTableOfContent(){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
}
}
CzyszczenieZZdarzeńTableOfContent();
let tab_promise2=new StronicowyParser.SugerowaneObiekty();
async function CzyStronaSubst(element,aktualna_strona,tab_promise2){
if(tab_promise2){tab_promise2.push(true);}
await StronicowyParser.muteks.zablokuj();
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: aktualna_strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.expandtemplates.wikitext;
if((wikikod!==null)&&(aktualna_strona!==null)){
if(tab_promise2){tab_promise2.push(true);}
StronaSubst(element,wikikod,aktualna_strona,tab_promise2).then((result) => {}).catch((error) => {});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
let aktualna_strona=StronicowyParser.pageinfo.fullname;
if(tab_promise2){tab_promise2.push(true,true);}
CzyStronaSubst(document,aktualna_strona,tab_promise2);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
function Progress(){
var c=document.createElement('div');
c.setAttribute("id","pasek_postępu")
c.setAttribute('style','line-height:1.2em;margin-top:-2px;margin-left:-2px;position:absolute;width:250px;height:80px;border:1px solid black;box-sizing:border-box;padding:5px;background-color:white;display:flex;flex-direction:column;box-sizing:border-box;');
var label=document.createElement('label');
label.setAttribute('for','file1');
label.innerHTML="<span style=\"color:blue;\">Ukończone wątki: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_0=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file1')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;');
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_1=c.appendChild(progress);
var label=document.createElement('label');
label.setAttribute('for','file2');
label.innerHTML="<span style=\"color:blue;\">Zwolnione blokaty: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_1=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file2')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;')
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_2=c.appendChild(progress);
function PozycjaXY(){
c.style.top=(window.scrollY+document.documentElement.clientHeight-parseFloat(c.style.height))+"px";
c.style.left=(window.scrollX+document.documentElement.clientWidth-parseFloat(c.style.width))+"px";
}
document.querySelector('body').appendChild(c);
PozycjaXY();
$(window).on('scroll',PozycjaXY);
$(window).on('resize',PozycjaXY);
return new Array(element_body_progress_1,element_body_progress_2,span_0,span_1);
}
var arr;
function __FUNKCJA(arr){
arr[0].setAttribute("value","0");
arr[1].setAttribute("value","0");
let dodatnie_0=tab_promise2.lengthPlus;
let ujemne_0=tab_promise2.lengthMinus;
let dodatnie_1=StronicowyParser.muteks.LiczbaBlokatPlus;
let ujemne_1=StronicowyParser.muteks.LiczbaBlokatMinus;
let postep_0=((dodatnie_0>0)?((ujemne_0/dodatnie_0)*100):0);
let postep_1=((dodatnie_1>0)?((ujemne_1/dodatnie_1)*100):0);
arr[0].setAttribute("value",postep_0);
arr[1].setAttribute("value",postep_1);
arr[2].innerHTML=(parseInt(postep_0*1000)/1000)+"%";
arr[3].innerHTML=(parseInt(postep_1*1000)/1000)+"%";
}
StronicowyParser.CzekajNaZakaczenie(tab_promise2,null,StronicowyParser.muteks,(tab_promise)=>{arr=Progress();__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);setTimeout(function(){let node_postep=document.getElementById('pasek_postępu');$(node_postep).remove();},2000);}).then(async (result) => {}).catch(()=>{});
};
StronicowyParser.WyswietlStronyKsiazki().then((result) => {}).catch((error) => {});
});
sg7axcyit7n50m74fbamy0k0zoy9hib
437329
437328
2022-08-09T17:40:31Z
Persino
2851
javascript
text/javascript
mw.loader.using('ext.gadget.gConfig', function(){
let globalne_zmienne=this;
StronicowyParser.WyswietlStronyKsiazki=async function(){
await StronicowyParser.muteks.zablokuj();
let stronasubst_latex=undefined;
let stronasubst_mathml=undefined;
let stronasubst_opakuj_kategorie_ze_sortowaniem=undefined;
let stronasubst_ukrywaj_toc=undefined;
let stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=undefined;
let stronasubst_aktualizowanie_nazw_artykulow=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=undefined;
let stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=undefined;
let stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=undefined;
let stronasubst_nie_usuwaj_styli=undefined;
let stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=undefined;
if((globalne_zmienne.gConfig!==undefined)&&(globalne_zmienne.gConfig.register!==undefined)&&(globalne_zmienne.gConfig.get!==undefined)){
mw.messages.set({
'StronaSubst-name': 'Strona zbiorcza',
'StronaSubst-description-page': 'Wikibooks:StronicowyParser/StronaSubst',
'StronaSubst-latex': 'Zamiast wzorów, wstaw tekst latexowy, w przeciwnym przypadku jest w formie LaTeX.',
'StronaSubst-mathml': 'Zamiast wzorów latexowych, wstaw je w formie znaczników MathML.',
'StronaSubst-opakuj_kategorie_ze_sortowaniem' : 'W stronach zbiorczych opakowuje kategorie, w postaci ramki, dla każdego artykułu z osobna.',
'StronaSubst-ukrywaj_toc' : "Ukrywa, począwszy od jakiegoś poziomu wszystkich tam spisów treści, na stronach zbiorczych.",
'StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach' : "Włącza dymki, nad linkami, w ładowanych dynamicznie stronach, tworząc je inteligentnymi.",
'StronaSubst-aktualizowanie_nazw_artykulow' : 'Aktualizuje na podstawie strony głównej nazwy tylko artykułów.',
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami' : "Aktualizuje sekcje poszczegónych rozdziałów artykułów ładowanych rozdziałami, domyślnie według sekcji w tych jednostkach.",
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika' : 'Aktualizuje, sekcje artykułów ładowanych rozdziałami, na podstawie strony głównej książki, a nie jego artykułów.',
'StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej' : 'Aktualizuje nagłówki strony głównej podręcznika na stronie zbiorczej.',
'StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule' : 'Aktualizuje, brakujące sekcje rozdziałów ładowanych rozdziałami artykułów, według wpisów na stronie głównej, na stronie zbiorczej.',
'StronaSubst-nie_usuwaj_styli' : 'Nie usuwa styli z nagłówków ładowanych stron.',
'StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst' : 'Rozwijaj szablony oznaczone szablonem SzablonSubst.',
});
gConfig.register('StronaSubst', {name: mw.msg('StronaSubst-name'), descriptionPage: mw.msg('StronaSubst-description-page')}, [
{
name: 'latex',
desc: mw.msg('StronaSubst-latex'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_latex']
},
{
name: 'mathml',
desc: mw.msg('StronaSubst-mathml'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_mathml']
},
{
name: 'opakuj_kategorie_ze_sortowaniem',
desc: mw.msg('StronaSubst-opakuj_kategorie_ze_sortowaniem'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_opakuj_kategorie_ze_sortowaniem']
},
{
name: 'ukrywaj_toc',
desc: mw.msg('StronaSubst-ukrywaj_toc'),
type: 'integer',
deflt: 0,
validation: function(n){ if((n<0)||(n==1)){ throw 'Wartość dotycząca poziomu ukrywania spisów treści jest nieprawidłowa!' }; return n; },
legacy: [window, 'wb_stronasubst_ukrywaj_toc']
},
{
name: 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach',
desc: mw.msg('StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach']
},
{
name: 'aktualizowanie_nazw_artykulow',
desc: mw.msg('StronaSubst-aktualizowanie_nazw_artykulow'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nazw_artykulow']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika']
},
{
name: 'aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej',
desc: mw.msg('StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej']
},
{
name: 'aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule',
desc: mw.msg('StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule']
},
{
name: 'nie_usuwaj_styli',
desc: mw.msg('StronaSubst-nie_usuwaj_styli'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_nie_usuwaj_styli']
},
{
name: 'rozwijaj_szablony_oznaczone_szablonem_szablonsubst',
desc: mw.msg('StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst']
},
]);
stronasubst_latex = (gConfig.get('StronaSubst', 'latex')==true);
stronasubst_mathml = (((gConfig.get('StronaSubst', 'mathml'))&&(!stronasubst_latex))==true);
stronasubst_opakuj_kategorie_ze_sortowaniem = (gConfig.get('StronaSubst', 'opakuj_kategorie_ze_sortowaniem')==true);
stronasubst_ukrywaj_toc = gConfig.get('StronaSubst', 'ukrywaj_toc');
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach = gConfig.get('StronaSubst', 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach');
stronasubst_aktualizowanie_nazw_artykulow = (gConfig.get('StronaSubst', 'aktualizowanie_nazw_artykulow')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami = (gConfig.get('StronaSubst', 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika = (gConfig.get('StronaSubst','aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika')==true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej = (gConfig.get('StronaSubst','aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej')==true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule = (gConfig.get('StronaSubst','aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule')==true);
stronasubst_nie_usuwaj_styli = (gConfig.get('StronaSubst','nie_usuwaj_styli')==true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst = (gConfig.get('StronaSubst','rozwijaj_szablony_oznaczone_szablonem_szablonsubst')==true);
}
//let podglad=document.querySelector('body:not(.action-view)');
//if(podglad){return;}
let stronasubst_tablica_tych_samych=new Array();
let stronasubst_tablica_rozdzialow=new Array();
let stronasubst_tablica_alternatywnych_nazw=new Array();
stronasubst_latex=((stronasubst_latex!==undefined)?stronasubst_latex:false);
stronasubst_mathml=((stronasubst_mathml!==undefined)?stronasubst_mathml:true);
stronasubst_opakuj_kategorie_ze_sortowaniem=((stronasubst_opakuj_kategorie_ze_sortowaniem!==undefined)?stronasubst_opakuj_kategorie_ze_sortowaniem:false);
stronasubst_ukrywaj_toc=parseInt(((stronasubst_ukrywaj_toc!==undefined)?stronasubst_ukrywaj_toc:0));
stronasubst_ukrywaj_toc=((!isNaN(stronasubst_ukrywaj_toc))?stronasubst_ukrywaj_toc:0);
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=((stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach!==undefined)?stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach:true);
stronasubst_aktualizowanie_nazw_artykulow=((stronasubst_aktualizowanie_nazw_artykulow!==undefined)?stronasubst_aktualizowanie_nazw_artykulow:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika:true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=((stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej!==undefined)?stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej:true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=((stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule!==undefined)?stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule:true);
stronasubst_nie_usuwaj_styli=((stronasubst_nie_usuwaj_styli!==undefined)?stronasubst_nie_usuwaj_styli:true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=((stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst!==undefined)?stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst:true);
async function AnalizujDalejSzablonSubst(element_strony,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let rozdzial_ksiazki="rozdział_książki";
let el=$(element_strony).find('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((el!==null)&&(el.length>0)){
for(let i=0;i<el.length;++i){
let element_el=el[i];
let ksiazka=element_el.querySelector("."+rozdzial_ksiazki);
if(ksiazka){
let nazwa_strony=element_el.getAttribute('nazwa_strony');
if(tab_promise2){tab_promise2.push(true);}
CzyStronaSubst(element_el,nazwa_strony,tab_promise2);
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
async function WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let title=data.parse.title;
let wikikod=data.parse.text['*'];
let strona_hash;
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let t=tab_uzyskane[0];
if(t==undefined){
console.log("Nie wykryto znacznika lsth_\d+.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
strona_hash=titles[t];
let selflink=document.createElement('div');
selflink.innerHTML=wikikod;
let czy_selflink=selflink.getElementsByClassName('selflink');
if((czy_selflink!==null)&&(czy_selflink.length==1)){
let elements=tabstrona[strona_hash];
let a=document.createElement('a');/*Tworzenie linku*/
a.setAttribute('href',StronicowyParser.kodowanie.EncodeHtml(title));
a.innerHTML=strona_hash;
let span=document.createElement('span');
span.appendChild(a);
span.setAttribute("class","niw link");/*Dodawanie klasy, by inny skript JS to przeanalizował jako link*/
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo(span);
}
for(let q in elements){
let element=elements[q];
element.innerHTML="";
element.appendChild(span);
$(element).wrap(function(){return "<strong></strong>";});
let przed=document.createTextNode("{{:");
let po=document.createTextNode("}}");
element.insertBefore(przed,element.firstChild);
element.appendChild(po);
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=tab_uzyskane[1].innerHTML;
let elements=tabstrona[strona_hash];
for(let q in elements){
let element=elements[q];
element.innerHTML=wikikod;
StronicowyParser.ZamienLinkiNaLinkiDoStronyAktualnej(element,title,titles);
}
StronicowyParser.AktualizujSpisTresciModuluStrony(elements,tabs,strona_hash,stronasubst_tablica_alternatywnych_nazw,stronasubst_tablica_tych_samych,stronasubst_tablica_rozdzialow,true,stronasubst_latex,stronasubst_mathml)
let strona_start=$(elements[0]).parents(".strona_start");
let rodzic=undefined;
if((strona_start!==null)&&(strona_start.length>0)){
rodzic=strona_start[0];
}
StronicowyParser.IndeksujHeadLine(rodzic);
StronicowyParser.PrzeIndeksujWszystkieTOC(rodzic,true);
for(let q in elements){
let element=elements[q];
async function ElementDalszychObliczen(element,tab_promise2){
await StronicowyParser.muteks.zablokuj(true);
StronicowyParser.PoprawRozdzialyStron(element);
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu(element,tab_promise2);//Funkcja jako gadżet do numerowania rozdziałów.
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element,tab_promise2);
}
if((StronicowyParser.szablony&&StronicowyParser.szablony.LadujSzablon)&&(stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst)){
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(element,title,titles,undefined,tab_promise).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(()=>{
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika(element);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
ElementDalszychObliczen(element,tab_promise2);
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function ToogleTableOfContainer(panel){
let id=panel.target;
let tagname=id.tagName.toUpperCase();
//console.log(czy_klasa,tagname,"TYTAN)";
if(tagname=="BUTTON"){
let czy_klasa_1=$(id).hasClass('sidebar-toc-toggle');
let czy_klasa_2=$(id).hasClass('vector-toc-collapse-button');
if(czy_klasa_1){
$(id).parent().children().last().each((i,element)=>{
let expanded=$(id).attr('aria-expanded');
if(expanded=="false"){
$(element).css('display',"block");
$(element).closest('li').addClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','true');
}else if(expanded=="true"){
$(element).css('display',"none");
$(element).closest('li').removeClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','false');
}
});
}else if(czy_klasa_2){
$(id).parents('#sidebar-toc-label').siblings('ul').each((i,element)=>{
let ukryj=$(element).css('display');
if(ukryj!="none"){
$(element).css('display',"none");
id.innerHTML=" pokaż ";
}else{
$(element).css('display',"block");
id.innerHTML=" ukryj "
}
});
}
}
}
let mutekstoogle=new StronicowyParser.Muteks();
async function ScrollTableOfContainer(){
await mutekstoogle.zablokuj();
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header').first().each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=rect_sticky.height-15;
});
let parser=document.querySelector('#mw-content-text .mw-parser-output');
if(parser){
let rect=parser.getBoundingClientRect();
if(rect.top>=height_sticky){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item').first().addClass('sidebar-toc-list-item-active');
mutekstoogle.odblokuj();
return;
}
}else{
mutekstoogle.odblokuj();
return;
}
var str=$('#mw-content-text .mw-parser-output').find('h1, h2, h3, h4, h5, h6');
if((str!==null)&&(str.length>0)){
var naglowek;
for(i=0;i<str.length;++i){
let element=str[i];
let rect=element.getBoundingClientRect();
if(rect.top>=height_sticky){
let mw_naglowek=element.querySelector('.mw-headline');
if(mw_naglowek){
let id_naglowek=mw_naglowek.getAttribute('id');
let tak=false;
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+id_naglowek){
let display=window.getComputedStyle(element, null).getPropertyValue('display');
if(display!="none"){
tak=true;
}
}
});
if(tak){
naglowek=id_naglowek;
break;
}
}
}
}
if(naglowek){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+naglowek){
$(element).addClass('sidebar-toc-list-item-active');
}
});
}
}
mutekstoogle.odblokuj();
}
async function StronaSubst(element_strony,wikikod,aktualna_strona,tab_promise2){
await StronicowyParser.muteks.zablokuj();
StronicowyParser.NaprawNaglowkiStrony(element_strony,true);
let czy_wikikod=wikikod.match(/^[_\s]*$/g);
let strona_start=$('#mw-content-text .mw-parser-output .strona_start');
function CzyWszystkieNaglowkiWewnatrzStronaStart(){
let pole=$('#mw-content-text .mw-parser-output').find('h1,h2,h3,h4,h5,h6');
for(let i=0;i<pole.length;++i){
let s=strona_start.find(pole[i]);
if((s===null)||(s.length==0)){
return false;
}
}
return true;
}
if(czy_wikikod){
StronicowyParser.muteks.odblokuj();
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyArtykulu)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyArtykulu(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
let czy_numerowac=StronicowyParser.CzyWlaczycSideBarTOC(undefined,true);
if(czy_numerowac){
czy_numerowac=false;
tab_promise.push(true);
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: StronicowyParser.pageinfo.fullname,
text: '{{#invoke:StronicowyParser|CzyStronęNumerować|'+StronicowyParser.pageinfo.fullname+'}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
let wikikod=data.expandtemplates.wikitext;
let czy_wikikod=/^[_\s]*$/g.test(wikikod);
if(!czy_wikikod){
czy_numerowac=true;
}
tab_promise.pop();
}).catch(()=>{tab_promise.pop();});
}
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
let tab_promise=new Array(true);
StronicowyParser.LimitTOC(czy_numerowac,stronasubst_ukrywaj_toc);
StronicowyParser.szablony.LadujSzablon(null,null,null,czy_numerowac,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true)
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],czy_numerowac,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(czy_numerowac)){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
return;
}
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(null,null,null,undefined,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async (result) => {
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
await StronicowyParser.CzekajNaZakaczenie(tab_promise).then(async (result) => {}).catch(()=>{});
await StronicowyParser.muteks.zablokuj();
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
let rozdzial_ksiazki="rozdział_książki";
let tagclass=element_strony.getElementsByClassName(rozdzial_ksiazki);
if(tagclass===null){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return null;
}
let liczba_elementow=tagclass.length;
if(liczba_elementow==0){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return null;
}
let titles=new Array();
let tabstrona=new Array();
let tabs=new Array();
let tab_section=new Array();
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element_strony,tab_promise2);
}
let tab_hn=new Array();
async function edit_action(numer,strona,hn,link_strona,czy_link_nie_w_naglowku){
await StronicowyParser.muteks.zablokuj();
let linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection===null){
let editsection=document.createElement('span');
editsection.classList.add('mw-editsection');
let bracket_poczatek=document.createElement('span');
bracket_poczatek.classList.add('mw-editsection-bracket')
bracket_poczatek.innerHTML="[";
let a=document.createElement('a');
a.setAttribute('href',"/w/index.php?title="+StronicowyParser.kodowanie.EncodeHtml(strona,false,true)+"&action=edit"+((numer>0)?("§ion="+numer):""));
a.setAttribute('title',"Edytuj artykuł: "+link_strona);
a.innerHTML="edytuj";
let bracket_koniec=document.createElement('span');
bracket_koniec.classList.add('mw-editsection-bracket')
bracket_koniec.innerHTML="]";
editsection.appendChild(bracket_poczatek);
editsection.appendChild(a)
editsection.appendChild(bracket_koniec);
hn.appendChild(editsection);
}
linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection!==null){
let mw_editsection_bracket=linkstrony_editsection.querySelector('a');
if(mw_editsection_bracket!==null){
if(czy_link_nie_w_naglowku){
let a=document.createElement('a');
a.innerHTML="artykuł";
a.setAttribute("href",StronicowyParser.kodowanie.EncodeHtml("/wiki/"+StronicowyParser.kodowanie.EncodeHtml(link_strona,false,true)));
a.setAttribute("title","Zobacz artykuł: "+link_strona);
let span=document.createElement('span');
span.innerHTML="| ";
span.setAttribute('class',"mw-editsection-bracket")
let czy_ma=$(mw_editsection_bracket).parent().hasClass('link');
if(czy_ma){
let rodzic_mw_editsection_bracket=mw_editsection_bracket.parentNode;
let span2=linkstrony_editsection.insertBefore(span, rodzic_mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}else{
let span2=linkstrony_editsection.insertBefore(span, mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}
}
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(linkstrony_editsection).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
}
for (let i=0;i<liczba_elementow;++i){
let tagclassname=tagclass[i];
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find("."+rozdzial_ksiazki);
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==tagclassname){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
if(tagclassname.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let class_element=tagclassname.getElementsByClassName('strona_subst');
let element;
if((class_element!==null)&&(class_element.length==1)){
element=class_element[0];
if(element.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let czy_link_nie_w_naglowku;
let strona_headline=tagclassname.getElementsByClassName('mw-headline');
let link_strona;
if((strona_headline!==null)&&(strona_headline.length==1)){
strona_a=strona_headline[0].getElementsByTagName('a');
if((strona_a!==null)&&(strona_a.length==1)){
link_strona=StronicowyParser.kodowanie.DecodeHtml(strona_a[0].getAttribute('href'));
if(link_strona!==null){
let re=/\/wiki\//g;
if(re.test(link_strona)){
link_strona=link_strona.substring(6,link_strona.length);
czy_link_nie_w_naglowku=false;
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}
}else{
link_strona=StronicowyParser.style.UsunStyle(element.innerHTML);
czy_link_nie_w_naglowku=true;
}
}
let re = /^[_\s]*$/g;
let dopasowanie = re.test(link_strona);
if(dopasowanie){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return;
};
link_strona=link_strona.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ").replace(/&/g,"&").replace(/ /g," ");
let hash=link_strona.replace(/^([^#]*)#(.*)$/,"$2").replace(/&/g,"&").replace(/ /g,"_");
/**/
let hn=strona_headline[0].parentNode;
if((hn===null)||(!hn.tagName.toUpperCase().match(/^H\d+$/g))){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
tab_section[i]=new Array(hn,link_strona,czy_link_nie_w_naglowku);
let strona=link_strona.match(/^[^#]*/g).toString();
async function PraceIteracyjne(tab_promise2){
await StronicowyParser.muteks.zablokuj();
if(/#/g.test(link_strona)){
let hash=link_strona.replace(/^([^#]*)#(.*)$/g,"$2");
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let numer=hn.innerHTML;
numer=parseInt(numer);
if(isNaN(numer)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return ;}
let tab_c=tab_section[c];
edit_action(numer,tab_c[1].match(/^[^#]*/g).toString(),tab_c[0],tab_c[1],tab_c[2]);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami){
if(!stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}else{
let uzupelniaj_sekcje_artykulow;
if(stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule){
uzupelniaj_sekcje_artykulow="tak";
}else{
uzupelniaj_sekcje_artykulow="";
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+link_strona+"|analiza=tak|uzupełniaj sekcje artykułów="+uzupelniaj_sekcje_artykulow+"|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
let a=headline.getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
a[0].setAttribute('title',stare);
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
}else{
edit_action(0,strona,hn,link_strona,czy_link_nie_w_naglowku);
if(stronasubst_aktualizowanie_nazw_artykulow){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+strona+"|analiza=tak|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceIteracyjne(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
/**/
tabs[i]=link_strona;
let czy=false;
for(let d in titles){
if(titles[d]==link_strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=link_strona;
}
if(tabstrona[link_strona]==null){
tabstrona[link_strona]=new Array();
}
let tab=tabstrona[link_strona];
let tablen=tab.length;
tabstrona[link_strona][tablen]=element;
}
async function PraceNaglowki(tab_promise2){
await StronicowyParser.muteks.zablokuj();
let promise;
if(element_strony==document){
let namespace=StronicowyParser.pageinfo.namespace;
let strona_podrecznika=((namespace!="")?(namespace+":"):"")+StronicowyParser.pageinfo.bookname;
promise=Promise.resolve(strona_podrecznika);
}else{
let zaan=$(element_strony).parents('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((zaan!==null)&&(zaan.length>0)){
let strona=zaan[0].getAttribute('nazwa_strony');
if(strona){
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](strona);
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}
if(tab_promise2){tab_promise2.push(true);}
promise.then(async (strona_podrecznika)=>{
await StronicowyParser.muteks.zablokuj();
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find(".klasa_nagłówka");
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)){
let g=0;
let tab_naglowka=new Array();
let tab_hn=new Array();
for(let z=0;z<klasa_naglowka.length;++z){
let pojedyncza_klasa_naglowka=klasa_naglowka[z];
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==pojedyncza_klasa_naglowka){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
let dana_klasa_naglowka=pojedyncza_klasa_naglowka.querySelector('.mw-headline');
if(dana_klasa_naglowka!==null){
if((dana_klasa_naglowka.parentNode!==null)&&(dana_klasa_naglowka.parentNode.tagName.toUpperCase().match(/^[Hh]\d+$/g))
&&(dana_klasa_naglowka.parentNode.parentNode!=null)&&(dana_klasa_naglowka.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&($(dana_klasa_naglowka.parentNode.parentNode).hasClass('klasa_nagłówka'))){
let naglowek=StronicowyParser.style.UsunStyle(dana_klasa_naglowka.innerHTML).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_").replace(/&/g,"&").replace(/ /g,"_");
let ww=1;
for(let x=0;x<tab_naglowka.length;++x){
if(tab_naglowka[x]==naglowek){
++ww;
}
}
naglowek=naglowek+((ww>1)?ww:"");
tab_naglowka[g]=naglowek;
tab_hn[g]=dana_klasa_naglowka.parentNode;
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, na stronie głównej podręcznika, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let nazwa_podrecznika=strona_podrecznika.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
let naglowek_sekcji_podrecznika=tab_naglowka[c].replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
edit_action(c+1,nazwa_podrecznika,tab_hn[c],nazwa_podrecznika+"#"+naglowek_sekcji_podrecznika,true);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();return;}
let headline=tab_hn[c].querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
++g;
}
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceNaglowki(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
function RozwazajNaglowki(){
let toc_fun=new StronicowyParser.ListaNodeTOC();
if((toc_fun.toc!==null)&&(toc_fun.toc.length>0)){
for(let w=0;w<toc_fun.toc.length;++w){
let czy_side_bar_toc=toc_fun.CzySideBarToc(toc_fun.toc[w]);
let ile_jest=0;
let li=toc_fun.toc[w].getElementsByTagName('li');
if((li!==null)&&(li.length>0)){
for(let dd=0;dd<li.length;++dd){
let element_li=li[dd];
let tocnumber;let toctext_wartosc;
if(czy_side_bar_toc){
tocnumber=element_li.querySelector('.sidebar-toc-numb');
if(!tocnumber){continue;}
toctext_wartosc=element_li.querySelector('.sidebar-toc-text').innerHTML.replace(new RegExp(StronicowyParser.wzor.BezZnakowSpecjalnych(tocnumber.outerHTML),"g"),"");
}else{
tocnumber=element_li.querySelector('.tocnumber');
toctext_wartosc=element_li.querySelector('.toctext').innerHTML;
}
if((tocnumber!==null)&&(toctext_wartosc!==null)){
let czy_jest=undefined;
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)&&(klasa_naglowka[ile_jest]!=null)){
let element_klasa_naglowka=klasa_naglowka[ile_jest];
let headline=element_klasa_naglowka.querySelector('.mw-headline');
if((headline!==null)
&&(headline.parentNode!==null)
&&(headline.parentNode.tagName.toUpperCase().match(/^H\d+$/))
&&(headline.parentNode.parentNode!==null)
&&(headline.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&(headline.parentNode.parentNode===element_klasa_naglowka)
){
let element_a;
if(czy_side_bar_toc){
element_a=tocnumber.parentNode.parentNode;
}else{
element_a=tocnumber.parentNode;
}
if(element_a.tagName.toUpperCase()=="A"){
let href=StronicowyParser.kodowanie.DecodeHtml(element_a.getAttribute('href'));
if(href!==null){
href=href.replace(/^#/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
let id_headline=headline.getAttribute('id');
if(id_headline!==null){
id_headline=id_headline.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
if(href!=id_headline){czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
if(czy_jest===undefined){ile_jest+=1;}
if((czy_jest===undefined)||(!czy_jest)){
let element_toctext=StronicowyParser.style.UsunStyle(toctext_wartosc).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ");
if(stronasubst_tablica_rozdzialow[element_toctext]==null){
stronasubst_tablica_rozdzialow[element_toctext]=new Array(tocnumber);
}else{
stronasubst_tablica_rozdzialow[element_toctext].push(tocnumber);
}
}
}
}
}
}
}
}
StronicowyParser.LimitTOC(true,stronasubst_ukrywaj_toc);
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],true,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(StronicowyParser.CzyWlaczycSideBarTOC(undefined,true))){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
RozwazajNaglowki();
if(stronasubst_mathml){
$("div.toc ul > li > a > span.toctext").toggleClass("mathml");
$("div.toc_spis ul > li > a > span.toctext").toggleClass("mathml");
$("div.mw-table-of-contents-container > nav.sidebar-toc ul > li > a > div.sidebar-toc-text").toggleClass("mathml");
}
function Strona(strona){
let strona_re=StronicowyParser.wzor.BezZnakowSpecjalnych(strona);
let re=new RegExp("^\\s*"+strona_re+"\\s*#","g");
return re;
}
function CzyArtykulyZNaglowkamiDlaStrony(re){
for(let s in titles){
let czy_hash=titles[s].match(re);
if(czy_hash){
return true;
}
}
return false;
}
let catlinks_fun=new StronicowyParser.LinkiKategorii();
await catlinks_fun.PobierzKategorieStrony();
for ( let t in titles ) {
let strona=titles[t].match(/^[^#]*/g).toString();
let szablon_artykulu;
let re_strona=Strona(strona);
let czy_naglowki=CzyArtykulyZNaglowkamiDlaStrony(re_strona);
if(!czy_naglowki){
szablon_artykulu="{{:"+strona+"}}";
}else{
/*---------------------------------*/
let rozdzial1=null;
let re=/^([^#]*)#(.*)$/g;
if(re.test(titles[t])){
rozdzial1=titles[t].replace(re,"$2");
rozdzial1=rozdzial1.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial1="";}
let rozdzial2=null;
let tit=titles[parseInt(t)+1];
if( tit && re.test(tit) && re_strona.test(tit)){
rozdzial2=tit.replace(re,"$2");
rozdzial2=rozdzial2.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial2="";}
/*---------------------------*/
szablon_artykulu="{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|TekstRozdziałuStrony|"+strona+"|"+rozdzial1+"|"+rozdzial2+"}}}}";
}
szablon_artykulu="{{PrzytnijTekst|"+szablon_artykulu+"}}";
if(stronasubst_opakuj_kategorie_ze_sortowaniem){
szablon_artykulu="{{OpakujKategorieZeSortowaniem|"+szablon_artykulu+"}}"
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text|categories',
title: strona,
text: "<div class=\"hn hn_"+t+"\">\n"+szablon_artykulu+"\n</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
catlinks_fun.AnalizaKategorii(data).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);}
WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2).then((result) => {}).catch((error) => {});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function CzyszczenieZZdarzeńTableOfContent(){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
}
}
CzyszczenieZZdarzeńTableOfContent();
let tab_promise2=new StronicowyParser.SugerowaneObiekty();
async function CzyStronaSubst(element,aktualna_strona,tab_promise2){
if(tab_promise2){tab_promise2.push(true);}
await StronicowyParser.muteks.zablokuj();
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: aktualna_strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.expandtemplates.wikitext;
if((wikikod!==null)&&(aktualna_strona!==null)){
if(tab_promise2){tab_promise2.push(true);}
StronaSubst(element,wikikod,aktualna_strona,tab_promise2).then((result) => {}).catch((error) => {});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
let aktualna_strona=StronicowyParser.pageinfo.fullname;
if(tab_promise2){tab_promise2.push(true,true);}
CzyStronaSubst(document,aktualna_strona,tab_promise2);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
function Progress(){
var c=document.createElement('div');
c.setAttribute("id","pasek_postępu")
c.setAttribute('style','line-height:1.2em;margin-top:-2px;margin-left:-2px;position:absolute;width:250px;height:80px;border:1px solid black;box-sizing:border-box;padding:5px;background-color:white;display:flex;flex-direction:column;box-sizing:border-box;');
var label=document.createElement('label');
label.setAttribute('for','file1');
label.innerHTML="<span style=\"color:blue;\">Ukończone wątki: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_0=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file1')
progress.setAttribute('style','margin-left:5px;width:95%;height:auto;box-sizing:border-box;');
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_1=c.appendChild(progress);
var label=document.createElement('label');
label.setAttribute('for','file2');
label.innerHTML="<span style=\"color:blue;\">Zwolnione blokaty: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_1=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file2')
progress.setAttribute('style','margin-left:5px;width:95%;height:auto;box-sizing:border-box;')
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_2=c.appendChild(progress);
function PozycjaXY(){
c.style.top=(window.scrollY+document.documentElement.clientHeight-parseFloat(c.style.height))+"px";
c.style.left=(window.scrollX+document.documentElement.clientWidth-parseFloat(c.style.width))+"px";
}
document.querySelector('body').appendChild(c);
PozycjaXY();
$(window).on('scroll',PozycjaXY);
$(window).on('resize',PozycjaXY);
return new Array(element_body_progress_1,element_body_progress_2,span_0,span_1);
}
var arr;
function __FUNKCJA(arr){
arr[0].setAttribute("value","0");
arr[1].setAttribute("value","0");
let dodatnie_0=tab_promise2.lengthPlus;
let ujemne_0=tab_promise2.lengthMinus;
let dodatnie_1=StronicowyParser.muteks.LiczbaBlokatPlus;
let ujemne_1=StronicowyParser.muteks.LiczbaBlokatMinus;
let postep_0=((dodatnie_0>0)?((ujemne_0/dodatnie_0)*100):0);
let postep_1=((dodatnie_1>0)?((ujemne_1/dodatnie_1)*100):0);
arr[0].setAttribute("value",postep_0);
arr[1].setAttribute("value",postep_1);
arr[2].innerHTML=(parseInt(postep_0*1000)/1000)+"%";
arr[3].innerHTML=(parseInt(postep_1*1000)/1000)+"%";
}
StronicowyParser.CzekajNaZakaczenie(tab_promise2,null,StronicowyParser.muteks,(tab_promise)=>{arr=Progress();__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);setTimeout(function(){let node_postep=document.getElementById('pasek_postępu');$(node_postep).remove();},2000);}).then(async (result) => {}).catch(()=>{});
};
StronicowyParser.WyswietlStronyKsiazki().then((result) => {}).catch((error) => {});
});
klkr7qdtf8h4sl6ovmfum2wrrgs8u3o
437330
437329
2022-08-09T17:40:59Z
Persino
2851
javascript
text/javascript
mw.loader.using('ext.gadget.gConfig', function(){
let globalne_zmienne=this;
StronicowyParser.WyswietlStronyKsiazki=async function(){
await StronicowyParser.muteks.zablokuj();
let stronasubst_latex=undefined;
let stronasubst_mathml=undefined;
let stronasubst_opakuj_kategorie_ze_sortowaniem=undefined;
let stronasubst_ukrywaj_toc=undefined;
let stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=undefined;
let stronasubst_aktualizowanie_nazw_artykulow=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=undefined;
let stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=undefined;
let stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=undefined;
let stronasubst_nie_usuwaj_styli=undefined;
let stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=undefined;
if((globalne_zmienne.gConfig!==undefined)&&(globalne_zmienne.gConfig.register!==undefined)&&(globalne_zmienne.gConfig.get!==undefined)){
mw.messages.set({
'StronaSubst-name': 'Strona zbiorcza',
'StronaSubst-description-page': 'Wikibooks:StronicowyParser/StronaSubst',
'StronaSubst-latex': 'Zamiast wzorów, wstaw tekst latexowy, w przeciwnym przypadku jest w formie LaTeX.',
'StronaSubst-mathml': 'Zamiast wzorów latexowych, wstaw je w formie znaczników MathML.',
'StronaSubst-opakuj_kategorie_ze_sortowaniem' : 'W stronach zbiorczych opakowuje kategorie, w postaci ramki, dla każdego artykułu z osobna.',
'StronaSubst-ukrywaj_toc' : "Ukrywa, począwszy od jakiegoś poziomu wszystkich tam spisów treści, na stronach zbiorczych.",
'StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach' : "Włącza dymki, nad linkami, w ładowanych dynamicznie stronach, tworząc je inteligentnymi.",
'StronaSubst-aktualizowanie_nazw_artykulow' : 'Aktualizuje na podstawie strony głównej nazwy tylko artykułów.',
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami' : "Aktualizuje sekcje poszczegónych rozdziałów artykułów ładowanych rozdziałami, domyślnie według sekcji w tych jednostkach.",
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika' : 'Aktualizuje, sekcje artykułów ładowanych rozdziałami, na podstawie strony głównej książki, a nie jego artykułów.',
'StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej' : 'Aktualizuje nagłówki strony głównej podręcznika na stronie zbiorczej.',
'StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule' : 'Aktualizuje, brakujące sekcje rozdziałów ładowanych rozdziałami artykułów, według wpisów na stronie głównej, na stronie zbiorczej.',
'StronaSubst-nie_usuwaj_styli' : 'Nie usuwa styli z nagłówków ładowanych stron.',
'StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst' : 'Rozwijaj szablony oznaczone szablonem SzablonSubst.',
});
gConfig.register('StronaSubst', {name: mw.msg('StronaSubst-name'), descriptionPage: mw.msg('StronaSubst-description-page')}, [
{
name: 'latex',
desc: mw.msg('StronaSubst-latex'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_latex']
},
{
name: 'mathml',
desc: mw.msg('StronaSubst-mathml'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_mathml']
},
{
name: 'opakuj_kategorie_ze_sortowaniem',
desc: mw.msg('StronaSubst-opakuj_kategorie_ze_sortowaniem'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_opakuj_kategorie_ze_sortowaniem']
},
{
name: 'ukrywaj_toc',
desc: mw.msg('StronaSubst-ukrywaj_toc'),
type: 'integer',
deflt: 0,
validation: function(n){ if((n<0)||(n==1)){ throw 'Wartość dotycząca poziomu ukrywania spisów treści jest nieprawidłowa!' }; return n; },
legacy: [window, 'wb_stronasubst_ukrywaj_toc']
},
{
name: 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach',
desc: mw.msg('StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach']
},
{
name: 'aktualizowanie_nazw_artykulow',
desc: mw.msg('StronaSubst-aktualizowanie_nazw_artykulow'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nazw_artykulow']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika']
},
{
name: 'aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej',
desc: mw.msg('StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej']
},
{
name: 'aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule',
desc: mw.msg('StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule']
},
{
name: 'nie_usuwaj_styli',
desc: mw.msg('StronaSubst-nie_usuwaj_styli'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_nie_usuwaj_styli']
},
{
name: 'rozwijaj_szablony_oznaczone_szablonem_szablonsubst',
desc: mw.msg('StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst']
},
]);
stronasubst_latex = (gConfig.get('StronaSubst', 'latex')==true);
stronasubst_mathml = (((gConfig.get('StronaSubst', 'mathml'))&&(!stronasubst_latex))==true);
stronasubst_opakuj_kategorie_ze_sortowaniem = (gConfig.get('StronaSubst', 'opakuj_kategorie_ze_sortowaniem')==true);
stronasubst_ukrywaj_toc = gConfig.get('StronaSubst', 'ukrywaj_toc');
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach = gConfig.get('StronaSubst', 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach');
stronasubst_aktualizowanie_nazw_artykulow = (gConfig.get('StronaSubst', 'aktualizowanie_nazw_artykulow')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami = (gConfig.get('StronaSubst', 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika = (gConfig.get('StronaSubst','aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika')==true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej = (gConfig.get('StronaSubst','aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej')==true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule = (gConfig.get('StronaSubst','aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule')==true);
stronasubst_nie_usuwaj_styli = (gConfig.get('StronaSubst','nie_usuwaj_styli')==true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst = (gConfig.get('StronaSubst','rozwijaj_szablony_oznaczone_szablonem_szablonsubst')==true);
}
//let podglad=document.querySelector('body:not(.action-view)');
//if(podglad){return;}
let stronasubst_tablica_tych_samych=new Array();
let stronasubst_tablica_rozdzialow=new Array();
let stronasubst_tablica_alternatywnych_nazw=new Array();
stronasubst_latex=((stronasubst_latex!==undefined)?stronasubst_latex:false);
stronasubst_mathml=((stronasubst_mathml!==undefined)?stronasubst_mathml:true);
stronasubst_opakuj_kategorie_ze_sortowaniem=((stronasubst_opakuj_kategorie_ze_sortowaniem!==undefined)?stronasubst_opakuj_kategorie_ze_sortowaniem:false);
stronasubst_ukrywaj_toc=parseInt(((stronasubst_ukrywaj_toc!==undefined)?stronasubst_ukrywaj_toc:0));
stronasubst_ukrywaj_toc=((!isNaN(stronasubst_ukrywaj_toc))?stronasubst_ukrywaj_toc:0);
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=((stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach!==undefined)?stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach:true);
stronasubst_aktualizowanie_nazw_artykulow=((stronasubst_aktualizowanie_nazw_artykulow!==undefined)?stronasubst_aktualizowanie_nazw_artykulow:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika:true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=((stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej!==undefined)?stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej:true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=((stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule!==undefined)?stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule:true);
stronasubst_nie_usuwaj_styli=((stronasubst_nie_usuwaj_styli!==undefined)?stronasubst_nie_usuwaj_styli:true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=((stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst!==undefined)?stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst:true);
async function AnalizujDalejSzablonSubst(element_strony,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let rozdzial_ksiazki="rozdział_książki";
let el=$(element_strony).find('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((el!==null)&&(el.length>0)){
for(let i=0;i<el.length;++i){
let element_el=el[i];
let ksiazka=element_el.querySelector("."+rozdzial_ksiazki);
if(ksiazka){
let nazwa_strony=element_el.getAttribute('nazwa_strony');
if(tab_promise2){tab_promise2.push(true);}
CzyStronaSubst(element_el,nazwa_strony,tab_promise2);
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
async function WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let title=data.parse.title;
let wikikod=data.parse.text['*'];
let strona_hash;
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let t=tab_uzyskane[0];
if(t==undefined){
console.log("Nie wykryto znacznika lsth_\d+.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
strona_hash=titles[t];
let selflink=document.createElement('div');
selflink.innerHTML=wikikod;
let czy_selflink=selflink.getElementsByClassName('selflink');
if((czy_selflink!==null)&&(czy_selflink.length==1)){
let elements=tabstrona[strona_hash];
let a=document.createElement('a');/*Tworzenie linku*/
a.setAttribute('href',StronicowyParser.kodowanie.EncodeHtml(title));
a.innerHTML=strona_hash;
let span=document.createElement('span');
span.appendChild(a);
span.setAttribute("class","niw link");/*Dodawanie klasy, by inny skript JS to przeanalizował jako link*/
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo(span);
}
for(let q in elements){
let element=elements[q];
element.innerHTML="";
element.appendChild(span);
$(element).wrap(function(){return "<strong></strong>";});
let przed=document.createTextNode("{{:");
let po=document.createTextNode("}}");
element.insertBefore(przed,element.firstChild);
element.appendChild(po);
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=tab_uzyskane[1].innerHTML;
let elements=tabstrona[strona_hash];
for(let q in elements){
let element=elements[q];
element.innerHTML=wikikod;
StronicowyParser.ZamienLinkiNaLinkiDoStronyAktualnej(element,title,titles);
}
StronicowyParser.AktualizujSpisTresciModuluStrony(elements,tabs,strona_hash,stronasubst_tablica_alternatywnych_nazw,stronasubst_tablica_tych_samych,stronasubst_tablica_rozdzialow,true,stronasubst_latex,stronasubst_mathml)
let strona_start=$(elements[0]).parents(".strona_start");
let rodzic=undefined;
if((strona_start!==null)&&(strona_start.length>0)){
rodzic=strona_start[0];
}
StronicowyParser.IndeksujHeadLine(rodzic);
StronicowyParser.PrzeIndeksujWszystkieTOC(rodzic,true);
for(let q in elements){
let element=elements[q];
async function ElementDalszychObliczen(element,tab_promise2){
await StronicowyParser.muteks.zablokuj(true);
StronicowyParser.PoprawRozdzialyStron(element);
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu(element,tab_promise2);//Funkcja jako gadżet do numerowania rozdziałów.
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element,tab_promise2);
}
if((StronicowyParser.szablony&&StronicowyParser.szablony.LadujSzablon)&&(stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst)){
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(element,title,titles,undefined,tab_promise).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(()=>{
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika(element);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
ElementDalszychObliczen(element,tab_promise2);
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function ToogleTableOfContainer(panel){
let id=panel.target;
let tagname=id.tagName.toUpperCase();
//console.log(czy_klasa,tagname,"TYTAN)";
if(tagname=="BUTTON"){
let czy_klasa_1=$(id).hasClass('sidebar-toc-toggle');
let czy_klasa_2=$(id).hasClass('vector-toc-collapse-button');
if(czy_klasa_1){
$(id).parent().children().last().each((i,element)=>{
let expanded=$(id).attr('aria-expanded');
if(expanded=="false"){
$(element).css('display',"block");
$(element).closest('li').addClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','true');
}else if(expanded=="true"){
$(element).css('display',"none");
$(element).closest('li').removeClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','false');
}
});
}else if(czy_klasa_2){
$(id).parents('#sidebar-toc-label').siblings('ul').each((i,element)=>{
let ukryj=$(element).css('display');
if(ukryj!="none"){
$(element).css('display',"none");
id.innerHTML=" pokaż ";
}else{
$(element).css('display',"block");
id.innerHTML=" ukryj "
}
});
}
}
}
let mutekstoogle=new StronicowyParser.Muteks();
async function ScrollTableOfContainer(){
await mutekstoogle.zablokuj();
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header').first().each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=rect_sticky.height-15;
});
let parser=document.querySelector('#mw-content-text .mw-parser-output');
if(parser){
let rect=parser.getBoundingClientRect();
if(rect.top>=height_sticky){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item').first().addClass('sidebar-toc-list-item-active');
mutekstoogle.odblokuj();
return;
}
}else{
mutekstoogle.odblokuj();
return;
}
var str=$('#mw-content-text .mw-parser-output').find('h1, h2, h3, h4, h5, h6');
if((str!==null)&&(str.length>0)){
var naglowek;
for(i=0;i<str.length;++i){
let element=str[i];
let rect=element.getBoundingClientRect();
if(rect.top>=height_sticky){
let mw_naglowek=element.querySelector('.mw-headline');
if(mw_naglowek){
let id_naglowek=mw_naglowek.getAttribute('id');
let tak=false;
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+id_naglowek){
let display=window.getComputedStyle(element, null).getPropertyValue('display');
if(display!="none"){
tak=true;
}
}
});
if(tak){
naglowek=id_naglowek;
break;
}
}
}
}
if(naglowek){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+naglowek){
$(element).addClass('sidebar-toc-list-item-active');
}
});
}
}
mutekstoogle.odblokuj();
}
async function StronaSubst(element_strony,wikikod,aktualna_strona,tab_promise2){
await StronicowyParser.muteks.zablokuj();
StronicowyParser.NaprawNaglowkiStrony(element_strony,true);
let czy_wikikod=wikikod.match(/^[_\s]*$/g);
let strona_start=$('#mw-content-text .mw-parser-output .strona_start');
function CzyWszystkieNaglowkiWewnatrzStronaStart(){
let pole=$('#mw-content-text .mw-parser-output').find('h1,h2,h3,h4,h5,h6');
for(let i=0;i<pole.length;++i){
let s=strona_start.find(pole[i]);
if((s===null)||(s.length==0)){
return false;
}
}
return true;
}
if(czy_wikikod){
StronicowyParser.muteks.odblokuj();
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyArtykulu)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyArtykulu(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
let czy_numerowac=StronicowyParser.CzyWlaczycSideBarTOC(undefined,true);
if(czy_numerowac){
czy_numerowac=false;
tab_promise.push(true);
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: StronicowyParser.pageinfo.fullname,
text: '{{#invoke:StronicowyParser|CzyStronęNumerować|'+StronicowyParser.pageinfo.fullname+'}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
let wikikod=data.expandtemplates.wikitext;
let czy_wikikod=/^[_\s]*$/g.test(wikikod);
if(!czy_wikikod){
czy_numerowac=true;
}
tab_promise.pop();
}).catch(()=>{tab_promise.pop();});
}
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
let tab_promise=new Array(true);
StronicowyParser.LimitTOC(czy_numerowac,stronasubst_ukrywaj_toc);
StronicowyParser.szablony.LadujSzablon(null,null,null,czy_numerowac,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true)
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],czy_numerowac,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(czy_numerowac)){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
return;
}
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(null,null,null,undefined,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async (result) => {
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
await StronicowyParser.CzekajNaZakaczenie(tab_promise).then(async (result) => {}).catch(()=>{});
await StronicowyParser.muteks.zablokuj();
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
let rozdzial_ksiazki="rozdział_książki";
let tagclass=element_strony.getElementsByClassName(rozdzial_ksiazki);
if(tagclass===null){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return null;
}
let liczba_elementow=tagclass.length;
if(liczba_elementow==0){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return null;
}
let titles=new Array();
let tabstrona=new Array();
let tabs=new Array();
let tab_section=new Array();
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element_strony,tab_promise2);
}
let tab_hn=new Array();
async function edit_action(numer,strona,hn,link_strona,czy_link_nie_w_naglowku){
await StronicowyParser.muteks.zablokuj();
let linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection===null){
let editsection=document.createElement('span');
editsection.classList.add('mw-editsection');
let bracket_poczatek=document.createElement('span');
bracket_poczatek.classList.add('mw-editsection-bracket')
bracket_poczatek.innerHTML="[";
let a=document.createElement('a');
a.setAttribute('href',"/w/index.php?title="+StronicowyParser.kodowanie.EncodeHtml(strona,false,true)+"&action=edit"+((numer>0)?("§ion="+numer):""));
a.setAttribute('title',"Edytuj artykuł: "+link_strona);
a.innerHTML="edytuj";
let bracket_koniec=document.createElement('span');
bracket_koniec.classList.add('mw-editsection-bracket')
bracket_koniec.innerHTML="]";
editsection.appendChild(bracket_poczatek);
editsection.appendChild(a)
editsection.appendChild(bracket_koniec);
hn.appendChild(editsection);
}
linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection!==null){
let mw_editsection_bracket=linkstrony_editsection.querySelector('a');
if(mw_editsection_bracket!==null){
if(czy_link_nie_w_naglowku){
let a=document.createElement('a');
a.innerHTML="artykuł";
a.setAttribute("href",StronicowyParser.kodowanie.EncodeHtml("/wiki/"+StronicowyParser.kodowanie.EncodeHtml(link_strona,false,true)));
a.setAttribute("title","Zobacz artykuł: "+link_strona);
let span=document.createElement('span');
span.innerHTML="| ";
span.setAttribute('class',"mw-editsection-bracket")
let czy_ma=$(mw_editsection_bracket).parent().hasClass('link');
if(czy_ma){
let rodzic_mw_editsection_bracket=mw_editsection_bracket.parentNode;
let span2=linkstrony_editsection.insertBefore(span, rodzic_mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}else{
let span2=linkstrony_editsection.insertBefore(span, mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}
}
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(linkstrony_editsection).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
}
for (let i=0;i<liczba_elementow;++i){
let tagclassname=tagclass[i];
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find("."+rozdzial_ksiazki);
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==tagclassname){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
if(tagclassname.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let class_element=tagclassname.getElementsByClassName('strona_subst');
let element;
if((class_element!==null)&&(class_element.length==1)){
element=class_element[0];
if(element.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let czy_link_nie_w_naglowku;
let strona_headline=tagclassname.getElementsByClassName('mw-headline');
let link_strona;
if((strona_headline!==null)&&(strona_headline.length==1)){
strona_a=strona_headline[0].getElementsByTagName('a');
if((strona_a!==null)&&(strona_a.length==1)){
link_strona=StronicowyParser.kodowanie.DecodeHtml(strona_a[0].getAttribute('href'));
if(link_strona!==null){
let re=/\/wiki\//g;
if(re.test(link_strona)){
link_strona=link_strona.substring(6,link_strona.length);
czy_link_nie_w_naglowku=false;
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}
}else{
link_strona=StronicowyParser.style.UsunStyle(element.innerHTML);
czy_link_nie_w_naglowku=true;
}
}
let re = /^[_\s]*$/g;
let dopasowanie = re.test(link_strona);
if(dopasowanie){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return;
};
link_strona=link_strona.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ").replace(/&/g,"&").replace(/ /g," ");
let hash=link_strona.replace(/^([^#]*)#(.*)$/,"$2").replace(/&/g,"&").replace(/ /g,"_");
/**/
let hn=strona_headline[0].parentNode;
if((hn===null)||(!hn.tagName.toUpperCase().match(/^H\d+$/g))){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
tab_section[i]=new Array(hn,link_strona,czy_link_nie_w_naglowku);
let strona=link_strona.match(/^[^#]*/g).toString();
async function PraceIteracyjne(tab_promise2){
await StronicowyParser.muteks.zablokuj();
if(/#/g.test(link_strona)){
let hash=link_strona.replace(/^([^#]*)#(.*)$/g,"$2");
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let numer=hn.innerHTML;
numer=parseInt(numer);
if(isNaN(numer)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return ;}
let tab_c=tab_section[c];
edit_action(numer,tab_c[1].match(/^[^#]*/g).toString(),tab_c[0],tab_c[1],tab_c[2]);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami){
if(!stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}else{
let uzupelniaj_sekcje_artykulow;
if(stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule){
uzupelniaj_sekcje_artykulow="tak";
}else{
uzupelniaj_sekcje_artykulow="";
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+link_strona+"|analiza=tak|uzupełniaj sekcje artykułów="+uzupelniaj_sekcje_artykulow+"|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
let a=headline.getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
a[0].setAttribute('title',stare);
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
}else{
edit_action(0,strona,hn,link_strona,czy_link_nie_w_naglowku);
if(stronasubst_aktualizowanie_nazw_artykulow){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+strona+"|analiza=tak|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceIteracyjne(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
/**/
tabs[i]=link_strona;
let czy=false;
for(let d in titles){
if(titles[d]==link_strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=link_strona;
}
if(tabstrona[link_strona]==null){
tabstrona[link_strona]=new Array();
}
let tab=tabstrona[link_strona];
let tablen=tab.length;
tabstrona[link_strona][tablen]=element;
}
async function PraceNaglowki(tab_promise2){
await StronicowyParser.muteks.zablokuj();
let promise;
if(element_strony==document){
let namespace=StronicowyParser.pageinfo.namespace;
let strona_podrecznika=((namespace!="")?(namespace+":"):"")+StronicowyParser.pageinfo.bookname;
promise=Promise.resolve(strona_podrecznika);
}else{
let zaan=$(element_strony).parents('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((zaan!==null)&&(zaan.length>0)){
let strona=zaan[0].getAttribute('nazwa_strony');
if(strona){
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](strona);
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}
if(tab_promise2){tab_promise2.push(true);}
promise.then(async (strona_podrecznika)=>{
await StronicowyParser.muteks.zablokuj();
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find(".klasa_nagłówka");
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)){
let g=0;
let tab_naglowka=new Array();
let tab_hn=new Array();
for(let z=0;z<klasa_naglowka.length;++z){
let pojedyncza_klasa_naglowka=klasa_naglowka[z];
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==pojedyncza_klasa_naglowka){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
let dana_klasa_naglowka=pojedyncza_klasa_naglowka.querySelector('.mw-headline');
if(dana_klasa_naglowka!==null){
if((dana_klasa_naglowka.parentNode!==null)&&(dana_klasa_naglowka.parentNode.tagName.toUpperCase().match(/^[Hh]\d+$/g))
&&(dana_klasa_naglowka.parentNode.parentNode!=null)&&(dana_klasa_naglowka.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&($(dana_klasa_naglowka.parentNode.parentNode).hasClass('klasa_nagłówka'))){
let naglowek=StronicowyParser.style.UsunStyle(dana_klasa_naglowka.innerHTML).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_").replace(/&/g,"&").replace(/ /g,"_");
let ww=1;
for(let x=0;x<tab_naglowka.length;++x){
if(tab_naglowka[x]==naglowek){
++ww;
}
}
naglowek=naglowek+((ww>1)?ww:"");
tab_naglowka[g]=naglowek;
tab_hn[g]=dana_klasa_naglowka.parentNode;
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, na stronie głównej podręcznika, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let nazwa_podrecznika=strona_podrecznika.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
let naglowek_sekcji_podrecznika=tab_naglowka[c].replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
edit_action(c+1,nazwa_podrecznika,tab_hn[c],nazwa_podrecznika+"#"+naglowek_sekcji_podrecznika,true);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();return;}
let headline=tab_hn[c].querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
++g;
}
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceNaglowki(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
function RozwazajNaglowki(){
let toc_fun=new StronicowyParser.ListaNodeTOC();
if((toc_fun.toc!==null)&&(toc_fun.toc.length>0)){
for(let w=0;w<toc_fun.toc.length;++w){
let czy_side_bar_toc=toc_fun.CzySideBarToc(toc_fun.toc[w]);
let ile_jest=0;
let li=toc_fun.toc[w].getElementsByTagName('li');
if((li!==null)&&(li.length>0)){
for(let dd=0;dd<li.length;++dd){
let element_li=li[dd];
let tocnumber;let toctext_wartosc;
if(czy_side_bar_toc){
tocnumber=element_li.querySelector('.sidebar-toc-numb');
if(!tocnumber){continue;}
toctext_wartosc=element_li.querySelector('.sidebar-toc-text').innerHTML.replace(new RegExp(StronicowyParser.wzor.BezZnakowSpecjalnych(tocnumber.outerHTML),"g"),"");
}else{
tocnumber=element_li.querySelector('.tocnumber');
toctext_wartosc=element_li.querySelector('.toctext').innerHTML;
}
if((tocnumber!==null)&&(toctext_wartosc!==null)){
let czy_jest=undefined;
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)&&(klasa_naglowka[ile_jest]!=null)){
let element_klasa_naglowka=klasa_naglowka[ile_jest];
let headline=element_klasa_naglowka.querySelector('.mw-headline');
if((headline!==null)
&&(headline.parentNode!==null)
&&(headline.parentNode.tagName.toUpperCase().match(/^H\d+$/))
&&(headline.parentNode.parentNode!==null)
&&(headline.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&(headline.parentNode.parentNode===element_klasa_naglowka)
){
let element_a;
if(czy_side_bar_toc){
element_a=tocnumber.parentNode.parentNode;
}else{
element_a=tocnumber.parentNode;
}
if(element_a.tagName.toUpperCase()=="A"){
let href=StronicowyParser.kodowanie.DecodeHtml(element_a.getAttribute('href'));
if(href!==null){
href=href.replace(/^#/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
let id_headline=headline.getAttribute('id');
if(id_headline!==null){
id_headline=id_headline.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
if(href!=id_headline){czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
if(czy_jest===undefined){ile_jest+=1;}
if((czy_jest===undefined)||(!czy_jest)){
let element_toctext=StronicowyParser.style.UsunStyle(toctext_wartosc).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ");
if(stronasubst_tablica_rozdzialow[element_toctext]==null){
stronasubst_tablica_rozdzialow[element_toctext]=new Array(tocnumber);
}else{
stronasubst_tablica_rozdzialow[element_toctext].push(tocnumber);
}
}
}
}
}
}
}
}
StronicowyParser.LimitTOC(true,stronasubst_ukrywaj_toc);
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],true,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(StronicowyParser.CzyWlaczycSideBarTOC(undefined,true))){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
RozwazajNaglowki();
if(stronasubst_mathml){
$("div.toc ul > li > a > span.toctext").toggleClass("mathml");
$("div.toc_spis ul > li > a > span.toctext").toggleClass("mathml");
$("div.mw-table-of-contents-container > nav.sidebar-toc ul > li > a > div.sidebar-toc-text").toggleClass("mathml");
}
function Strona(strona){
let strona_re=StronicowyParser.wzor.BezZnakowSpecjalnych(strona);
let re=new RegExp("^\\s*"+strona_re+"\\s*#","g");
return re;
}
function CzyArtykulyZNaglowkamiDlaStrony(re){
for(let s in titles){
let czy_hash=titles[s].match(re);
if(czy_hash){
return true;
}
}
return false;
}
let catlinks_fun=new StronicowyParser.LinkiKategorii();
await catlinks_fun.PobierzKategorieStrony();
for ( let t in titles ) {
let strona=titles[t].match(/^[^#]*/g).toString();
let szablon_artykulu;
let re_strona=Strona(strona);
let czy_naglowki=CzyArtykulyZNaglowkamiDlaStrony(re_strona);
if(!czy_naglowki){
szablon_artykulu="{{:"+strona+"}}";
}else{
/*---------------------------------*/
let rozdzial1=null;
let re=/^([^#]*)#(.*)$/g;
if(re.test(titles[t])){
rozdzial1=titles[t].replace(re,"$2");
rozdzial1=rozdzial1.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial1="";}
let rozdzial2=null;
let tit=titles[parseInt(t)+1];
if( tit && re.test(tit) && re_strona.test(tit)){
rozdzial2=tit.replace(re,"$2");
rozdzial2=rozdzial2.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial2="";}
/*---------------------------*/
szablon_artykulu="{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|TekstRozdziałuStrony|"+strona+"|"+rozdzial1+"|"+rozdzial2+"}}}}";
}
szablon_artykulu="{{PrzytnijTekst|"+szablon_artykulu+"}}";
if(stronasubst_opakuj_kategorie_ze_sortowaniem){
szablon_artykulu="{{OpakujKategorieZeSortowaniem|"+szablon_artykulu+"}}"
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text|categories',
title: strona,
text: "<div class=\"hn hn_"+t+"\">\n"+szablon_artykulu+"\n</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
catlinks_fun.AnalizaKategorii(data).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);}
WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2).then((result) => {}).catch((error) => {});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function CzyszczenieZZdarzeńTableOfContent(){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
}
}
CzyszczenieZZdarzeńTableOfContent();
let tab_promise2=new StronicowyParser.SugerowaneObiekty();
async function CzyStronaSubst(element,aktualna_strona,tab_promise2){
if(tab_promise2){tab_promise2.push(true);}
await StronicowyParser.muteks.zablokuj();
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: aktualna_strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.expandtemplates.wikitext;
if((wikikod!==null)&&(aktualna_strona!==null)){
if(tab_promise2){tab_promise2.push(true);}
StronaSubst(element,wikikod,aktualna_strona,tab_promise2).then((result) => {}).catch((error) => {});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
let aktualna_strona=StronicowyParser.pageinfo.fullname;
if(tab_promise2){tab_promise2.push(true,true);}
CzyStronaSubst(document,aktualna_strona,tab_promise2);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
function Progress(){
var c=document.createElement('div');
c.setAttribute("id","pasek_postępu")
c.setAttribute('style','line-height:1.2em;margin-top:-2px;margin-left:-2px;position:absolute;width:250px;height:80px;border:1px solid black;box-sizing:border-box;padding:5px;background-color:white;display:flex;flex-direction:column;box-sizing:border-box;');
var label=document.createElement('label');
label.setAttribute('for','file1');
label.innerHTML="<span style=\"color:blue;\">Ukończone wątki: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_0=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file1')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;');
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_1=c.appendChild(progress);
var label=document.createElement('label');
label.setAttribute('for','file2');
label.innerHTML="<span style=\"color:blue;\">Zwolnione blokaty: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_1=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file2')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;')
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_2=c.appendChild(progress);
function PozycjaXY(){
c.style.top=(window.scrollY+document.documentElement.clientHeight-parseFloat(c.style.height))+"px";
c.style.left=(window.scrollX+document.documentElement.clientWidth-parseFloat(c.style.width))+"px";
}
document.querySelector('body').appendChild(c);
PozycjaXY();
$(window).on('scroll',PozycjaXY);
$(window).on('resize',PozycjaXY);
return new Array(element_body_progress_1,element_body_progress_2,span_0,span_1);
}
var arr;
function __FUNKCJA(arr){
arr[0].setAttribute("value","0");
arr[1].setAttribute("value","0");
let dodatnie_0=tab_promise2.lengthPlus;
let ujemne_0=tab_promise2.lengthMinus;
let dodatnie_1=StronicowyParser.muteks.LiczbaBlokatPlus;
let ujemne_1=StronicowyParser.muteks.LiczbaBlokatMinus;
let postep_0=((dodatnie_0>0)?((ujemne_0/dodatnie_0)*100):0);
let postep_1=((dodatnie_1>0)?((ujemne_1/dodatnie_1)*100):0);
arr[0].setAttribute("value",postep_0);
arr[1].setAttribute("value",postep_1);
arr[2].innerHTML=(parseInt(postep_0*1000)/1000)+"%";
arr[3].innerHTML=(parseInt(postep_1*1000)/1000)+"%";
}
StronicowyParser.CzekajNaZakaczenie(tab_promise2,null,StronicowyParser.muteks,(tab_promise)=>{arr=Progress();__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);setTimeout(function(){let node_postep=document.getElementById('pasek_postępu');$(node_postep).remove();},2000);}).then(async (result) => {}).catch(()=>{});
};
StronicowyParser.WyswietlStronyKsiazki().then((result) => {}).catch((error) => {});
});
sg7axcyit7n50m74fbamy0k0zoy9hib
437351
437330
2022-08-09T18:36:08Z
Persino
2851
javascript
text/javascript
mw.loader.using('ext.gadget.gConfig', function(){
let globalne_zmienne=this;
StronicowyParser.WyswietlStronyKsiazki=async function(){
await StronicowyParser.muteks.zablokuj();
let stronasubst_latex=undefined;
let stronasubst_mathml=undefined;
let stronasubst_opakuj_kategorie_ze_sortowaniem=undefined;
let stronasubst_ukrywaj_toc=undefined;
let stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=undefined;
let stronasubst_aktualizowanie_nazw_artykulow=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=undefined;
let stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=undefined;
let stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=undefined;
let stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=undefined;
let stronasubst_nie_usuwaj_styli=undefined;
let stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=undefined;
if((globalne_zmienne.gConfig!==undefined)&&(globalne_zmienne.gConfig.register!==undefined)&&(globalne_zmienne.gConfig.get!==undefined)){
mw.messages.set({
'StronaSubst-name': 'Strona zbiorcza',
'StronaSubst-description-page': 'Wikibooks:StronicowyParser/StronaSubst',
'StronaSubst-latex': 'Zamiast wzorów, wstaw tekst latexowy, w przeciwnym przypadku jest w formie LaTeX.',
'StronaSubst-mathml': 'Zamiast wzorów latexowych, wstaw je w formie znaczników MathML.',
'StronaSubst-opakuj_kategorie_ze_sortowaniem' : 'W stronach zbiorczych opakowuje kategorie, w postaci ramki, dla każdego artykułu z osobna.',
'StronaSubst-ukrywaj_toc' : "Ukrywa, począwszy od jakiegoś poziomu wszystkich tam spisów treści, na stronach zbiorczych.",
'StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach' : "Włącza dymki, nad linkami, w ładowanych dynamicznie stronach, tworząc je inteligentnymi.",
'StronaSubst-aktualizowanie_nazw_artykulow' : 'Aktualizuje na podstawie strony głównej nazwy tylko artykułów.',
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami' : "Aktualizuje sekcje poszczegónych rozdziałów artykułów ładowanych rozdziałami, domyślnie według sekcji w tych jednostkach.",
'StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika' : 'Aktualizuje, sekcje artykułów ładowanych rozdziałami, na podstawie strony głównej książki, a nie jego artykułów.',
'StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej' : 'Aktualizuje nagłówki strony głównej podręcznika na stronie zbiorczej.',
'StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule' : 'Aktualizuje, brakujące sekcje rozdziałów ładowanych rozdziałami artykułów, według wpisów na stronie głównej, na stronie zbiorczej.',
'StronaSubst-nie_usuwaj_styli' : 'Nie usuwa styli z nagłówków ładowanych stron.',
'StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst' : 'Rozwijaj szablony oznaczone szablonem SzablonSubst.',
});
gConfig.register('StronaSubst', {name: mw.msg('StronaSubst-name'), descriptionPage: mw.msg('StronaSubst-description-page')}, [
{
name: 'latex',
desc: mw.msg('StronaSubst-latex'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_latex']
},
{
name: 'mathml',
desc: mw.msg('StronaSubst-mathml'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_mathml']
},
{
name: 'opakuj_kategorie_ze_sortowaniem',
desc: mw.msg('StronaSubst-opakuj_kategorie_ze_sortowaniem'),
type: 'boolean',
deflt: false,
legacy: [window, 'wb_stronasubst_opakuj_kategorie_ze_sortowaniem']
},
{
name: 'ukrywaj_toc',
desc: mw.msg('StronaSubst-ukrywaj_toc'),
type: 'integer',
deflt: 0,
validation: function(n){ if((n<0)||(n==1)){ throw 'Wartość dotycząca poziomu ukrywania spisów treści jest nieprawidłowa!' }; return n; },
legacy: [window, 'wb_stronasubst_ukrywaj_toc']
},
{
name: 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach',
desc: mw.msg('StronaSubst-dymki_nad_linkami_w_ladowanych_dynamicznie_stronach'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach']
},
{
name: 'aktualizowanie_nazw_artykulow',
desc: mw.msg('StronaSubst-aktualizowanie_nazw_artykulow'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nazw_artykulow']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami']
},
{
name: 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika',
desc: mw.msg('StronaSubst-aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika']
},
{
name: 'aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej',
desc: mw.msg('StronaSubst-aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej']
},
{
name: 'aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule',
desc: mw.msg('StronaSubst-aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule']
},
{
name: 'nie_usuwaj_styli',
desc: mw.msg('StronaSubst-nie_usuwaj_styli'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_nie_usuwaj_styli']
},
{
name: 'rozwijaj_szablony_oznaczone_szablonem_szablonsubst',
desc: mw.msg('StronaSubst-rozwijaj_szablony_oznaczone_szablonem_szablonsubst'),
type: 'boolean',
deflt: true,
legacy: [window, 'wb_stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst']
},
]);
stronasubst_latex = (gConfig.get('StronaSubst', 'latex')==true);
stronasubst_mathml = (((gConfig.get('StronaSubst', 'mathml'))&&(!stronasubst_latex))==true);
stronasubst_opakuj_kategorie_ze_sortowaniem = (gConfig.get('StronaSubst', 'opakuj_kategorie_ze_sortowaniem')==true);
stronasubst_ukrywaj_toc = gConfig.get('StronaSubst', 'ukrywaj_toc');
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach = gConfig.get('StronaSubst', 'dymki_nad_linkami_w_ladowanych_dynamicznie_stronach');
stronasubst_aktualizowanie_nazw_artykulow = (gConfig.get('StronaSubst', 'aktualizowanie_nazw_artykulow')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami = (gConfig.get('StronaSubst', 'aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami')==true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika = (gConfig.get('StronaSubst','aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika')==true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej = (gConfig.get('StronaSubst','aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej')==true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule = (gConfig.get('StronaSubst','aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule')==true);
stronasubst_nie_usuwaj_styli = (gConfig.get('StronaSubst','nie_usuwaj_styli')==true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst = (gConfig.get('StronaSubst','rozwijaj_szablony_oznaczone_szablonem_szablonsubst')==true);
}
//let podglad=document.querySelector('body:not(.action-view)');
//if(podglad){return;}
let stronasubst_tablica_tych_samych=new Array();
let stronasubst_tablica_rozdzialow=new Array();
let stronasubst_tablica_alternatywnych_nazw=new Array();
stronasubst_latex=((stronasubst_latex!==undefined)?stronasubst_latex:false);
stronasubst_mathml=((stronasubst_mathml!==undefined)?stronasubst_mathml:true);
stronasubst_opakuj_kategorie_ze_sortowaniem=((stronasubst_opakuj_kategorie_ze_sortowaniem!==undefined)?stronasubst_opakuj_kategorie_ze_sortowaniem:false);
stronasubst_ukrywaj_toc=parseInt(((stronasubst_ukrywaj_toc!==undefined)?stronasubst_ukrywaj_toc:0));
stronasubst_ukrywaj_toc=((!isNaN(stronasubst_ukrywaj_toc))?stronasubst_ukrywaj_toc:0);
stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach=((stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach!==undefined)?stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach:true);
stronasubst_aktualizowanie_nazw_artykulow=((stronasubst_aktualizowanie_nazw_artykulow!==undefined)?stronasubst_aktualizowanie_nazw_artykulow:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami:true);
stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika=((stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika!==undefined)?stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika:true);
stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej=((stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej!==undefined)?stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej:true);
stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule=((stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule!==undefined)?stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule:true);
stronasubst_nie_usuwaj_styli=((stronasubst_nie_usuwaj_styli!==undefined)?stronasubst_nie_usuwaj_styli:true);
stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst=((stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst!==undefined)?stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst:true);
async function AnalizujDalejSzablonSubst(element_strony,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let rozdzial_ksiazki="rozdział_książki";
let el=$(element_strony).find('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((el!==null)&&(el.length>0)){
for(let i=0;i<el.length;++i){
let element_el=el[i];
let ksiazka=element_el.querySelector("."+rozdzial_ksiazki);
if(ksiazka){
let nazwa_strony=element_el.getAttribute('nazwa_strony');
if(tab_promise2){tab_promise2.push(true);}
CzyStronaSubst(element_el,nazwa_strony,tab_promise2);
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
async function WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2){
await StronicowyParser.muteks.zablokuj();
let title=data.parse.title;
let wikikod=data.parse.text['*'];
let strona_hash;
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let t=tab_uzyskane[0];
if(t==undefined){
console.log("Nie wykryto znacznika lsth_\d+.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
strona_hash=titles[t];
let selflink=document.createElement('div');
selflink.innerHTML=wikikod;
let czy_selflink=selflink.getElementsByClassName('selflink');
if((czy_selflink!==null)&&(czy_selflink.length==1)){
let elements=tabstrona[strona_hash];
let a=document.createElement('a');/*Tworzenie linku*/
a.setAttribute('href',StronicowyParser.kodowanie.EncodeHtml(title));
a.innerHTML=strona_hash;
let span=document.createElement('span');
span.appendChild(a);
span.setAttribute("class","niw link");/*Dodawanie klasy, by inny skript JS to przeanalizował jako link*/
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuElementuInfo(span);
}
for(let q in elements){
let element=elements[q];
element.innerHTML="";
element.appendChild(span);
$(element).wrap(function(){return "<strong></strong>";});
let przed=document.createTextNode("{{:");
let po=document.createTextNode("}}");
element.insertBefore(przed,element.firstChild);
element.appendChild(po);
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=tab_uzyskane[1].innerHTML;
let elements=tabstrona[strona_hash];
for(let q in elements){
let element=elements[q];
element.innerHTML=wikikod;
StronicowyParser.ZamienLinkiNaLinkiDoStronyAktualnej(element,title,titles);
}
StronicowyParser.AktualizujSpisTresciModuluStrony(elements,tabs,strona_hash,stronasubst_tablica_alternatywnych_nazw,stronasubst_tablica_tych_samych,stronasubst_tablica_rozdzialow,true,stronasubst_latex,stronasubst_mathml)
let strona_start=$(elements[0]).parents(".strona_start");
let rodzic=undefined;
if((strona_start!==null)&&(strona_start.length>0)){
rodzic=strona_start[0];
}
StronicowyParser.IndeksujHeadLine(rodzic);
StronicowyParser.PrzeIndeksujWszystkieTOC(rodzic,true);
for(let q in elements){
let element=elements[q];
async function ElementDalszychObliczen(element,tab_promise2){
await StronicowyParser.muteks.zablokuj(true);
StronicowyParser.PoprawRozdzialyStron(element);
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.numerowanie.NumerujRozdzialyPoSciagnieciuArtykulu(element,tab_promise2);//Funkcja jako gadżet do numerowania rozdziałów.
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element,tab_promise2).then((result) => {}).catch((error) => {});
}
element.style.display="block";
let parent=element.parentNode;
if((parent!==null)&&(parent.tagName.toUpperCase()=="DIV")){
parent.style.display="block";
}
let pasek=element.parentNode.querySelector('.postęp_ładowania_artykułu');
if(pasek!==null){
element.parentNode.removeChild(pasek);
}
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element,tab_promise2);
}
if((StronicowyParser.szablony&&StronicowyParser.szablony.LadujSzablon)&&(stronasubst_rozwijaj_szablony_oznaczone_szablonem_szablonsubst)){
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(element,title,titles,undefined,tab_promise).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(()=>{
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika(element);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
ElementDalszychObliczen(element,tab_promise2);
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function ToogleTableOfContainer(panel){
let id=panel.target;
let tagname=id.tagName.toUpperCase();
//console.log(czy_klasa,tagname,"TYTAN)";
if(tagname=="BUTTON"){
let czy_klasa_1=$(id).hasClass('sidebar-toc-toggle');
let czy_klasa_2=$(id).hasClass('vector-toc-collapse-button');
if(czy_klasa_1){
$(id).parent().children().last().each((i,element)=>{
let expanded=$(id).attr('aria-expanded');
if(expanded=="false"){
$(element).css('display',"block");
$(element).closest('li').addClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','true');
}else if(expanded=="true"){
$(element).css('display',"none");
$(element).closest('li').removeClass('sidebar-toc-list-item-expanded');
$(id).attr('aria-expanded','false');
}
});
}else if(czy_klasa_2){
$(id).parents('#sidebar-toc-label').siblings('ul').each((i,element)=>{
let ukryj=$(element).css('display');
if(ukryj!="none"){
$(element).css('display',"none");
id.innerHTML=" pokaż ";
}else{
$(element).css('display',"block");
id.innerHTML=" ukryj "
}
});
}
}
}
let mutekstoogle=new StronicowyParser.Muteks();
async function ScrollTableOfContainer(){
await mutekstoogle.zablokuj();
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible header.vector-sticky-header').first().each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=rect_sticky.height-15;
});
let parser=document.querySelector('#mw-content-text .mw-parser-output');
if(parser){
let rect=parser.getBoundingClientRect();
if(rect.top>=height_sticky){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item').first().addClass('sidebar-toc-list-item-active');
mutekstoogle.odblokuj();
return;
}
}else{
mutekstoogle.odblokuj();
return;
}
var str=$('#mw-content-text .mw-parser-output').find('h1, h2, h3, h4, h5, h6');
if((str!==null)&&(str.length>0)){
var naglowek;
for(i=0;i<str.length;++i){
let element=str[i];
let rect=element.getBoundingClientRect();
if(rect.top>=height_sticky){
let mw_naglowek=element.querySelector('.mw-headline');
if(mw_naglowek){
let id_naglowek=mw_naglowek.getAttribute('id');
let tak=false;
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+id_naglowek){
let display=window.getComputedStyle(element, null).getPropertyValue('display');
if(display!="none"){
tak=true;
}
}
});
if(tak){
naglowek=id_naglowek;
break;
}
}
}
}
if(naglowek){
$('.mw-table-of-contents-container > #mw-panel-toc li.sidebar-toc-list-item.sidebar-toc-list-item-active').each((i,element)=>{
$(element).removeClass('sidebar-toc-list-item-active');
});
$('.mw-table-of-contents-container > #mw-panel-toc ul').find('li.sidebar-toc-list-item').each((i,element)=>{
if(element.getAttribute('id')=='toc-'+naglowek){
$(element).addClass('sidebar-toc-list-item-active');
}
});
}
}
mutekstoogle.odblokuj();
}
async function StronaSubst(element_strony,wikikod,aktualna_strona,tab_promise2){
await StronicowyParser.muteks.zablokuj();
StronicowyParser.NaprawNaglowkiStrony(element_strony,true);
let czy_wikikod=wikikod.match(/^[_\s]*$/g);
let strona_start=$('#mw-content-text .mw-parser-output .strona_start');
function CzyWszystkieNaglowkiWewnatrzStronaStart(){
let pole=$('#mw-content-text .mw-parser-output').find('h1,h2,h3,h4,h5,h6');
for(let i=0;i<pole.length;++i){
let s=strona_start.find(pole[i]);
if((s===null)||(s.length==0)){
return false;
}
}
return true;
}
if(czy_wikikod){
StronicowyParser.muteks.odblokuj();
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyArtykulu)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyArtykulu(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
let czy_numerowac=StronicowyParser.CzyWlaczycSideBarTOC(undefined,true);
if(czy_numerowac){
czy_numerowac=false;
tab_promise.push(true);
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: StronicowyParser.pageinfo.fullname,
text: '{{#invoke:StronicowyParser|CzyStronęNumerować|'+StronicowyParser.pageinfo.fullname+'}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
let wikikod=data.expandtemplates.wikitext;
let czy_wikikod=/^[_\s]*$/g.test(wikikod);
if(!czy_wikikod){
czy_numerowac=true;
}
tab_promise.pop();
}).catch(()=>{tab_promise.pop();});
}
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
let tab_promise=new Array(true);
StronicowyParser.LimitTOC(czy_numerowac,stronasubst_ukrywaj_toc);
StronicowyParser.szablony.LadujSzablon(null,null,null,czy_numerowac,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true)
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async()=>{
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],czy_numerowac,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,czy_numerowac,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(czy_numerowac)){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
if(tab_promise2){tab_promise2.pop();}
return;
}
let tab_promise=new Array(true);
StronicowyParser.szablony.LadujSzablon(null,null,null,undefined,tab_promise);
StronicowyParser.ZmieniajNazwyLinkowNaLinkiPodrecznika();
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(element_strony,tab_promise);
tab_promise.push(true);
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(element_strony,tab_promise);
if(tab_promise2){tab_promise2.push(true);tab_promise2.push(true);}
StronicowyParser.CzekajNaZakaczenie(tab_promise,tab_promise2).then(async (result) => {
let tab_promise=new Array();
if((StronicowyParser.numerowanie)&&(StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow)){
tab_promise.push(true);
StronicowyParser.numerowanie.NumerujRozdzialyPrzedSciaganiemArtykulow(tab_promise).then((result) => {}).catch((error) => {});//Funkcja jako gadżet do numerowania rozdziałów.
}
await StronicowyParser.CzekajNaZakaczenie(tab_promise).then(async (result) => {}).catch(()=>{});
await StronicowyParser.muteks.zablokuj();
if(tab_promise2){tab_promise2.push(true);}
AnalizujDalejSzablonSubst(element_strony,tab_promise2);
let rozdzial_ksiazki="rozdział_książki";
let tagclass=element_strony.getElementsByClassName(rozdzial_ksiazki);
if(tagclass===null){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return null;
}
let liczba_elementow=tagclass.length;
if(liczba_elementow==0){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return null;
}
let titles=new Array();
let tabstrona=new Array();
let tabs=new Array();
let tab_section=new Array();
if(StronicowyParser.TrybCiemnyIJasny){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.TrybCiemnyIJasny(element_strony,tab_promise2);
}
let tab_hn=new Array();
async function edit_action(numer,strona,hn,link_strona,czy_link_nie_w_naglowku){
await StronicowyParser.muteks.zablokuj();
let linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection===null){
let editsection=document.createElement('span');
editsection.classList.add('mw-editsection');
let bracket_poczatek=document.createElement('span');
bracket_poczatek.classList.add('mw-editsection-bracket')
bracket_poczatek.innerHTML="[";
let a=document.createElement('a');
a.setAttribute('href',"/w/index.php?title="+StronicowyParser.kodowanie.EncodeHtml(strona,false,true)+"&action=edit"+((numer>0)?("§ion="+numer):""));
a.setAttribute('title',"Edytuj artykuł: "+link_strona);
a.innerHTML="edytuj";
let bracket_koniec=document.createElement('span');
bracket_koniec.classList.add('mw-editsection-bracket')
bracket_koniec.innerHTML="]";
editsection.appendChild(bracket_poczatek);
editsection.appendChild(a)
editsection.appendChild(bracket_koniec);
hn.appendChild(editsection);
}
linkstrony_editsection=hn.querySelector('.mw-editsection');
if(linkstrony_editsection!==null){
let mw_editsection_bracket=linkstrony_editsection.querySelector('a');
if(mw_editsection_bracket!==null){
if(czy_link_nie_w_naglowku){
let a=document.createElement('a');
a.innerHTML="artykuł";
a.setAttribute("href",StronicowyParser.kodowanie.EncodeHtml("/wiki/"+StronicowyParser.kodowanie.EncodeHtml(link_strona,false,true)));
a.setAttribute("title","Zobacz artykuł: "+link_strona);
let span=document.createElement('span');
span.innerHTML="| ";
span.setAttribute('class',"mw-editsection-bracket")
let czy_ma=$(mw_editsection_bracket).parent().hasClass('link');
if(czy_ma){
let rodzic_mw_editsection_bracket=mw_editsection_bracket.parentNode;
let span2=linkstrony_editsection.insertBefore(span, rodzic_mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}else{
let span2=linkstrony_editsection.insertBefore(span, mw_editsection_bracket);
linkstrony_editsection.insertBefore(a, span2);
}
}
}
if((StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo)&&(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach)){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(linkstrony_editsection).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
}
for (let i=0;i<liczba_elementow;++i){
let tagclassname=tagclass[i];
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find("."+rozdzial_ksiazki);
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==tagclassname){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
if(tagclassname.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let class_element=tagclassname.getElementsByClassName('strona_subst');
let element;
if((class_element!==null)&&(class_element.length==1)){
element=class_element[0];
if(element.tagName.toUpperCase()!="DIV"){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let czy_link_nie_w_naglowku;
let strona_headline=tagclassname.getElementsByClassName('mw-headline');
let link_strona;
if((strona_headline!==null)&&(strona_headline.length==1)){
strona_a=strona_headline[0].getElementsByTagName('a');
if((strona_a!==null)&&(strona_a.length==1)){
link_strona=StronicowyParser.kodowanie.DecodeHtml(strona_a[0].getAttribute('href'));
if(link_strona!==null){
let re=/\/wiki\//g;
if(re.test(link_strona)){
link_strona=link_strona.substring(6,link_strona.length);
czy_link_nie_w_naglowku=false;
}else{
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
}
}else{
link_strona=StronicowyParser.style.UsunStyle(element.innerHTML);
czy_link_nie_w_naglowku=true;
}
}
let re = /^[_\s]*$/g;
let dopasowanie = re.test(link_strona);
if(dopasowanie){
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();};
return;
};
link_strona=link_strona.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ").replace(/&/g,"&").replace(/ /g," ");
let hash=link_strona.replace(/^([^#]*)#(.*)$/,"$2").replace(/&/g,"&").replace(/ /g,"_");
/**/
let hn=strona_headline[0].parentNode;
if((hn===null)||(!hn.tagName.toUpperCase().match(/^H\d+$/g))){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
tab_section[i]=new Array(hn,link_strona,czy_link_nie_w_naglowku);
let strona=link_strona.match(/^[^#]*/g).toString();
async function PraceIteracyjne(tab_promise2){
await StronicowyParser.muteks.zablokuj();
if(/#/g.test(link_strona)){
let hash=link_strona.replace(/^([^#]*)#(.*)$/g,"$2");
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let numer=hn.innerHTML;
numer=parseInt(numer);
if(isNaN(numer)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return ;}
let tab_c=tab_section[c];
edit_action(numer,tab_c[1].match(/^[^#]*/g).toString(),tab_c[0],tab_c[1],tab_c[2]);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami){
if(!stronasubst_aktualizowanie_sekcji_artykolow_ladowanych_rozdzialami_wedlug_strony_glownej_podrecznika){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona+"|"+hash+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}else{
let uzupelniaj_sekcje_artykulow;
if(stronasubst_aktualizowanie_nieistniejacych_sekcji_rozdzialow_artykulow_na_stronie_glownej_w_artykule){
uzupelniaj_sekcje_artykulow="tak";
}else{
uzupelniaj_sekcje_artykulow="";
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+link_strona+"|analiza=tak|uzupełniaj sekcje artykułów="+uzupelniaj_sekcje_artykulow+"|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
let a=headline.getElementsByTagName('a');
if((a!==null)&&(a.length>0)){
a[0].setAttribute('title',stare);
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
}else{
edit_action(0,strona,hn,link_strona,czy_link_nie_w_naglowku);
if(stronasubst_aktualizowanie_nazw_artykulow){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+i+"\">{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|LiniaArtykułuKsiążki|nazwa przestrzeni nazw=(main)|nazwa jednostki="+strona+"|analiza=tak|wyspecjalizowana=tak}}}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();if(tab_promise2){tab_promise2.pop();};return;}
let tab_c=tab_section[c];
let hn_element=tab_c[0];
let headline=hn_element.querySelector('.mw-headline');
let stare=tab_section[c][1];let nowe;
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
wikikod=StronicowyParser.style.UsunStyle(wikikod);
nowe=wikikod.replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}else{
nowe=StronicowyParser.style.UsunStyle(wikikod).replace(/<[^<>]+>/g,"").replace(/^[\s_]*/g,"").replace(/[\s_]*$/g,"").replace(/[\s_]+/g," ");
}
stronasubst_tablica_alternatywnych_nazw[stare]=nowe;
headline.innerHTML=wikikod;
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceIteracyjne(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
/**/
tabs[i]=link_strona;
let czy=false;
for(let d in titles){
if(titles[d]==link_strona){
czy=true;
break;
}
}
if(!czy){
titles[titles.length]=link_strona;
}
if(tabstrona[link_strona]==null){
tabstrona[link_strona]=new Array();
}
let tab=tabstrona[link_strona];
let tablen=tab.length;
tabstrona[link_strona][tablen]=element;
}
async function PraceNaglowki(tab_promise2){
await StronicowyParser.muteks.zablokuj();
let promise;
if(element_strony==document){
let namespace=StronicowyParser.pageinfo.namespace;
let strona_podrecznika=((namespace!="")?(namespace+":"):"")+StronicowyParser.pageinfo.bookname;
promise=Promise.resolve(strona_podrecznika);
}else{
let zaan=$(element_strony).parents('.rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany');
if((zaan!==null)&&(zaan.length>0)){
let strona=zaan[0].getAttribute('nazwa_strony');
if(strona){
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](strona);
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}else{
promise=StronicowyParser.nazwy["PEŁNANAZWAKSIĄŻKI"](aktualna_strona);
}
}
if(tab_promise2){tab_promise2.push(true);}
promise.then(async (strona_podrecznika)=>{
await StronicowyParser.muteks.zablokuj();
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
let potomek_analizowany=$(element_strony).find(".rodzic_szablon_subst_js.szablon_subst_js_zaanalizowany, .szablon_subst_js.szablon_subst_js_zaanalizowany").find(".klasa_nagłówka");
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)){
let g=0;
let tab_naglowka=new Array();
let tab_hn=new Array();
for(let z=0;z<klasa_naglowka.length;++z){
let pojedyncza_klasa_naglowka=klasa_naglowka[z];
function CzyOdrzucic(){
for(let i=0;i<potomek_analizowany.length;++i){
if(potomek_analizowany[i]==pojedyncza_klasa_naglowka){
return true;
}
}
return false;
}
if(CzyOdrzucic()){continue;}
let dana_klasa_naglowka=pojedyncza_klasa_naglowka.querySelector('.mw-headline');
if(dana_klasa_naglowka!==null){
if((dana_klasa_naglowka.parentNode!==null)&&(dana_klasa_naglowka.parentNode.tagName.toUpperCase().match(/^[Hh]\d+$/g))
&&(dana_klasa_naglowka.parentNode.parentNode!=null)&&(dana_klasa_naglowka.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&($(dana_klasa_naglowka.parentNode.parentNode).hasClass('klasa_nagłówka'))){
let naglowek=StronicowyParser.style.UsunStyle(dana_klasa_naglowka.innerHTML).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_").replace(/&/g,"&").replace(/ /g,"_");
let ww=1;
for(let x=0;x<tab_naglowka.length;++x){
if(tab_naglowka[x]==naglowek){
++ww;
}
}
naglowek=naglowek+((ww>1)?ww:"");
tab_naglowka[g]=naglowek;
tab_hn[g]=dana_klasa_naglowka.parentNode;
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|KtóraSekcjaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, na stronie głównej podręcznika, która podaje numer sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
let nazwa_podrecznika=strona_podrecznika.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
let naglowek_sekcji_podrecznika=tab_naglowka[c].replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ")
edit_action(c+1,nazwa_podrecznika,tab_hn[c],nazwa_podrecznika+"#"+naglowek_sekcji_podrecznika,true);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
if(stronasubst_aktualizowanie_naglowkow_strony_glownej_podrecznika_na_stronie_zbiorczej){
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text',
title: aktualna_strona,
text: "<div class=\"hn hn_"+g+"\">{{#invoke:StronicowyParser|ZwróćSekcjęNagłówkaStrony|"+strona_podrecznika+"|"+naglowek+"}}</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.parse.text['*'];
let tab_uzyskane=StronicowyParser.potrzebne.UzyskajLiczbe(wikikod);
let c=tab_uzyskane[0];let hn=tab_uzyskane[1];
if(c===undefined){
console.log("Nie wykryto znacznika hn_\d+ dla strony, która podaje nazwę sekcji na podstawie jego id.");
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
return;
}
wikikod=hn.innerHTML;
if(/^\s*$/g.test(wikikod)){StronicowyParser.muteks.odblokuj();return;}
let headline=tab_hn[c].querySelector('.mw-headline');
if(!stronasubst_nie_usuwaj_styli){
StronicowyParser.style.PrzeniesStyleNaPoczatekArtykulu(wikikod);
headline.innerHTML=StronicowyParser.style.UsunStyle(wikikod);
}else{
headline.innerHTML=wikikod;
}
StronicowyParser.ZamieniajNazwyLinkuTOC(headline,true,stronasubst_latex);
if(stronasubst_dymki_nad_linkami_w_ladowanych_dynamicznie_stronach){
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
if(StronicowyParser.gadgetdymkisubst&&StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo){
StronicowyParser.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(headline).then((result) => {}).catch((error) => {});
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
++g;
}
}
}
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
if(tab_promise2){tab_promise2.push(true);}
setTimeout(()=>{
PraceNaglowki(tab_promise2).then((result) => {}).catch((error) => {});
},1000);
function RozwazajNaglowki(){
let toc_fun=new StronicowyParser.ListaNodeTOC();
if((toc_fun.toc!==null)&&(toc_fun.toc.length>0)){
for(let w=0;w<toc_fun.toc.length;++w){
let czy_side_bar_toc=toc_fun.CzySideBarToc(toc_fun.toc[w]);
let ile_jest=0;
let li=toc_fun.toc[w].getElementsByTagName('li');
if((li!==null)&&(li.length>0)){
for(let dd=0;dd<li.length;++dd){
let element_li=li[dd];
let tocnumber;let toctext_wartosc;
if(czy_side_bar_toc){
tocnumber=element_li.querySelector('.sidebar-toc-numb');
if(!tocnumber){continue;}
toctext_wartosc=element_li.querySelector('.sidebar-toc-text').innerHTML.replace(new RegExp(StronicowyParser.wzor.BezZnakowSpecjalnych(tocnumber.outerHTML),"g"),"");
}else{
tocnumber=element_li.querySelector('.tocnumber');
toctext_wartosc=element_li.querySelector('.toctext').innerHTML;
}
if((tocnumber!==null)&&(toctext_wartosc!==null)){
let czy_jest=undefined;
let klasa_naglowka=element_strony.getElementsByClassName('klasa_nagłówka');
if((klasa_naglowka!==null)&&(klasa_naglowka.length>0)&&(klasa_naglowka[ile_jest]!=null)){
let element_klasa_naglowka=klasa_naglowka[ile_jest];
let headline=element_klasa_naglowka.querySelector('.mw-headline');
if((headline!==null)
&&(headline.parentNode!==null)
&&(headline.parentNode.tagName.toUpperCase().match(/^H\d+$/))
&&(headline.parentNode.parentNode!==null)
&&(headline.parentNode.parentNode.tagName.toUpperCase()=="DIV")
&&(headline.parentNode.parentNode===element_klasa_naglowka)
){
let element_a;
if(czy_side_bar_toc){
element_a=tocnumber.parentNode.parentNode;
}else{
element_a=tocnumber.parentNode;
}
if(element_a.tagName.toUpperCase()=="A"){
let href=StronicowyParser.kodowanie.DecodeHtml(element_a.getAttribute('href'));
if(href!==null){
href=href.replace(/^#/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
let id_headline=headline.getAttribute('id');
if(id_headline!==null){
id_headline=id_headline.replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g,"_");
if(href!=id_headline){czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
}else{czy_jest=true;}
if(czy_jest===undefined){ile_jest+=1;}
if((czy_jest===undefined)||(!czy_jest)){
let element_toctext=StronicowyParser.style.UsunStyle(toctext_wartosc).replace(/<[^<>]+>/g,"").replace(/^[_\s]*/g,"").replace(/[_\s]*$/g,"").replace(/[_\s]+/g," ");
if(stronasubst_tablica_rozdzialow[element_toctext]==null){
stronasubst_tablica_rozdzialow[element_toctext]=new Array(tocnumber);
}else{
stronasubst_tablica_rozdzialow[element_toctext].push(tocnumber);
}
}
}
}
}
}
}
}
StronicowyParser.LimitTOC(true,stronasubst_ukrywaj_toc);
if(CzyWszystkieNaglowkiWewnatrzStronaStart()){
if((strona_start!==null)&&(strona_start.length>0)){
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(strona_start[0],true,stronasubst_latex,stronasubst_mathml);
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
}else{
StronicowyParser.DodawajRozdzialyDoTOCSpisTresci(undefined,true,stronasubst_latex,stronasubst_mathml);
}
if(globalne_zmienne.SideBarToc){SideBarToc();}
if(globalne_zmienne.ScrollBarOverflow){ScrollBarOverflow();}
let action_view=document.querySelector('body.action-view:not(.ns-special)');
if((action_view)&&(StronicowyParser.CzyWlaczycSideBarTOC(undefined,true))){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').on('click',function(e){
ToogleTableOfContainer(e);
ScrollTableOfContainer(e);
});
$('body.skin-vector-search-vue .mw-table-of-contents-container #mw-panel-toc').hover(ScrollTableOfContainer,ScrollTableOfContainer);
ScrollTableOfContainer();
$(window).on('scroll',ScrollTableOfContainer);
}
}
RozwazajNaglowki();
if(stronasubst_mathml){
$("div.toc ul > li > a > span.toctext").toggleClass("mathml");
$("div.toc_spis ul > li > a > span.toctext").toggleClass("mathml");
$("div.mw-table-of-contents-container > nav.sidebar-toc ul > li > a > div.sidebar-toc-text").toggleClass("mathml");
}
function Strona(strona){
let strona_re=StronicowyParser.wzor.BezZnakowSpecjalnych(strona);
let re=new RegExp("^\\s*"+strona_re+"\\s*#","g");
return re;
}
function CzyArtykulyZNaglowkamiDlaStrony(re){
for(let s in titles){
let czy_hash=titles[s].match(re);
if(czy_hash){
return true;
}
}
return false;
}
let catlinks_fun=new StronicowyParser.LinkiKategorii();
await catlinks_fun.PobierzKategorieStrony();
for ( let t in titles ) {
let strona=titles[t].match(/^[^#]*/g).toString();
let szablon_artykulu;
let re_strona=Strona(strona);
let czy_naglowki=CzyArtykulyZNaglowkamiDlaStrony(re_strona);
if(!czy_naglowki){
szablon_artykulu="{{:"+strona+"}}";
}else{
/*---------------------------------*/
let rozdzial1=null;
let re=/^([^#]*)#(.*)$/g;
if(re.test(titles[t])){
rozdzial1=titles[t].replace(re,"$2");
rozdzial1=rozdzial1.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial1="";}
let rozdzial2=null;
let tit=titles[parseInt(t)+1];
if( tit && re.test(tit) && re_strona.test(tit)){
rozdzial2=tit.replace(re,"$2");
rozdzial2=rozdzial2.replace(/&/g,"&").replace(/ /g," ").replace(/<i>/g,"''").replace(/<\/i>/g,"''").replace(/<b>/g,"'''").replace(/<\/b>/g,"'''");
}else{rozdzial2="";}
/*---------------------------*/
szablon_artykulu="{{#invoke:Ramka|Rozwiń|{{#invoke:StronicowyParser|TekstRozdziałuStrony|"+strona+"|"+rozdzial1+"|"+rozdzial2+"}}}}";
}
szablon_artykulu="{{PrzytnijTekst|"+szablon_artykulu+"}}";
if(stronasubst_opakuj_kategorie_ze_sortowaniem){
szablon_artykulu="{{OpakujKategorieZeSortowaniem|"+szablon_artykulu+"}}"
}
if(tab_promise2){tab_promise2.push(true);}
StronicowyParser.api.ZadaniaApi({
action: 'parse',
format: 'json',
prop: 'text|categories',
title: strona,
text: "<div class=\"hn hn_"+t+"\">\n"+szablon_artykulu+"\n</div>",
disabletoc: true,
disablelimitreport: true,
contentmodel: 'wikitext',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
catlinks_fun.AnalizaKategorii(data).then((result) => {}).catch((error) => {});
if(tab_promise2){tab_promise2.push(true);}
WikikodTitle(data,tabs,titles,tabstrona,stronasubst_latex,stronasubst_mathml,tab_promise2).then((result) => {}).catch((error) => {});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch(()=>{if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
function CzyszczenieZZdarzeńTableOfContent(){
let toc_nowy_vector=$('.mw-table-of-contents-container');
if((toc_nowy_vector!==null)&&(toc_nowy_vector.length>0)){
let sidebartoc=toc_nowy_vector.children('.sidebar-toc');
if((sidebartoc!==null)&&(sidebartoc.length>0)){
let kopia=sidebartoc[0].cloneNode(true);
$(sidebartoc[0]).parent().each((i,rodzic)=>{
rodzic.replaceChild(kopia,sidebartoc[0]);
});
}
}
}
CzyszczenieZZdarzeńTableOfContent();
let tab_promise2=new StronicowyParser.SugerowaneObiekty();
async function CzyStronaSubst(element,aktualna_strona,tab_promise2){
if(tab_promise2){tab_promise2.push(true);}
await StronicowyParser.muteks.zablokuj();
StronicowyParser.api.ZadaniaApi({
action: 'expandtemplates',
format: 'json',
prop: 'wikitext',
title: aktualna_strona,
text: '{{#invoke:StronicowyParser|CzyStronaSubst}}',
smaxage: 600,
maxage: 600,
}).then(async function(data){
await StronicowyParser.muteks.zablokuj();
let wikikod=data.expandtemplates.wikitext;
if((wikikod!==null)&&(aktualna_strona!==null)){
if(tab_promise2){tab_promise2.push(true);}
StronaSubst(element,wikikod,aktualna_strona,tab_promise2).then((result) => {}).catch((error) => {});
}
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}).catch((error) => {if(tab_promise2){tab_promise2.pop();}});
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
}
let aktualna_strona=StronicowyParser.pageinfo.fullname;
if(tab_promise2){tab_promise2.push(true,true);}
CzyStronaSubst(document,aktualna_strona,tab_promise2);
StronicowyParser.muteks.odblokuj();
if(tab_promise2){tab_promise2.pop();}
function Progress(){
var c=document.createElement('div');
c.setAttribute("id","pasek_postępu")
c.setAttribute('style','line-height:1.2em;margin-top:-2px;margin-left:-2px;position:absolute;width:250px;height:80px;border:1px solid black;box-sizing:border-box;padding:6px;background-color:white;display:flex;flex-direction:column;box-sizing:border-box;');
var label=document.createElement('label');
label.setAttribute('for','file1');
label.innerHTML="<span style=\"color:blue;\">Ukończone wątki: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_0=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file1')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;');
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_1=c.appendChild(progress);
var label=document.createElement('label');
label.setAttribute('for','file2');
label.innerHTML="<span style=\"color:blue;\">Zwolnione blokaty: </span>";
label.setAttribute('style','font-size:17px;padding-right:10px;padding-left:10px;height:100%;box-sizing:border-box;');
var span=document.createElement('span');
span.innerHTML="0%";
var span_1=label.appendChild(span);
c.appendChild(label);
var progress=document.createElement('progress');
progress.innerHTML="0%";
progress.setAttribute('id','file2')
progress.setAttribute('style','margin-left:5px;width:95%;height:100%;box-sizing:border-box;')
progress.setAttribute("max","100");
progress.setAttribute('value',"0");
var element_body_progress_2=c.appendChild(progress);
function PozycjaXY(){
c.style.top=(window.scrollY+document.documentElement.clientHeight-parseFloat(c.style.height))+"px";
c.style.left=(window.scrollX+document.documentElement.clientWidth-parseFloat(c.style.width))+"px";
}
document.querySelector('body').appendChild(c);
PozycjaXY();
$(window).on('scroll',PozycjaXY);
$(window).on('resize',PozycjaXY);
return new Array(element_body_progress_1,element_body_progress_2,span_0,span_1);
}
var arr;
function __FUNKCJA(arr){
arr[0].setAttribute("value","0");
arr[1].setAttribute("value","0");
let dodatnie_0=tab_promise2.lengthPlus;
let ujemne_0=tab_promise2.lengthMinus;
let dodatnie_1=StronicowyParser.muteks.LiczbaBlokatPlus;
let ujemne_1=StronicowyParser.muteks.LiczbaBlokatMinus;
let postep_0=((dodatnie_0>0)?((ujemne_0/dodatnie_0)*100):0);
let postep_1=((dodatnie_1>0)?((ujemne_1/dodatnie_1)*100):0);
arr[0].setAttribute("value",postep_0);
arr[1].setAttribute("value",postep_1);
arr[2].innerHTML=(parseInt(postep_0*1000)/1000)+"%";
arr[3].innerHTML=(parseInt(postep_1*1000)/1000)+"%";
}
StronicowyParser.CzekajNaZakaczenie(tab_promise2,null,StronicowyParser.muteks,(tab_promise)=>{arr=Progress();__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);},(tab_promise)=>{__FUNKCJA(arr);setTimeout(function(){let node_postep=document.getElementById('pasek_postępu');$(node_postep).remove();},2000);}).then(async (result) => {}).catch(()=>{});
};
StronicowyParser.WyswietlStronyKsiazki().then((result) => {}).catch((error) => {});
});
nurnpnmoj4xldmktu7812r8dzbhmg36
Szablon:StronaStart/stronastart.css
10
58549
437289
437238
2022-08-09T12:01:12Z
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{
height:100% !important;
max-height:100% !important;
width:100%;
max-width:700px;
}
.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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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_zawartości > .ciało_strona > p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{
margin-top:0.6em;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .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;
}
gt7byh5sjc3jn8d62q1axaqrbh53er7
437293
437289
2022-08-09T12:27:02Z
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{
height:100% !important;
max-height:100% !important;
width:auto;
max-width:700px;
}
.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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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_zawartości > .ciało_strona > p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{
margin-top:0.6em;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .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;
}
giu01ltziw71o6ux26d509fr2r6ild3
437294
437293
2022-08-09T12:29:31Z
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{
height:100% !important;
max-height:100% !important;
width:auto;
max-width:700px;
}
.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 500ms ease-out, linear;
transition-property: transform;
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 500ms ease-out, linear;
transition-property: transform;
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 500ms ease-out, linear;
transition-property: transform;
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 500ms ease-out, linear;
transition-property: transform;
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_zawartości > .ciało_strona > p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{
margin-top:0.6em;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .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;
}
0xt81bwhgkx04u6iqmxtr4nwwbdw8uq
437295
437294
2022-08-09T12:32:01Z
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{
height:100% !important;
max-height:100% !important;
width:auto;
max-width:700px;
}
.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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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_zawartości > .ciało_strona > p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{
margin-top:0.6em;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .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;
}
giu01ltziw71o6ux26d509fr2r6ild3
437296
437295
2022-08-09T12:41:36Z
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{
height:100% !important;
max-height:100% !important;
width:auto;
max-width:700px;
}
.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{
max-width:700px !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{
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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_zawartości > .ciało_strona > p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{
margin-top:0.6em;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .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;
}
p4csc558uaathtu6jfv58h40iojtmle
437297
437296
2022-08-09T13:04:13Z
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{
height:100% !important;
max-height:100% !important;
width:auto;
max-width:calc( 700px - 4px );
}
.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{
max-width:700px !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{
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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_zawartości > .ciało_strona > p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{
margin-top:0.6em;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .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;
}
sfz7luo4kd7ybjlra5kvarb335zyjho
437298
437297
2022-08-09T13:05:05Z
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{
height:100% !important;
max-height:100% !important;
width:auto;
max-width:700px;
}
.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{
max-width:700px !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{
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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_zawartości > .ciało_strona > p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{
margin-top:0.6em;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .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;
}
p4csc558uaathtu6jfv58h40iojtmle
437299
437298
2022-08-09T13:10:48Z
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{
height:100% !important;
max-height:100% !important;
width:auto;
max-width:696px;
}
.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{
max-width:700px !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{
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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_zawartości > .ciało_strona > p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{
margin-top:0.6em;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .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;
}
5svy88ef51j182pe0c189dup2lpkvyn
437300
437299
2022-08-09T13:14:37Z
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;
}
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis.mw-scrollbar-overflow-x{
width:100%;
max-width:700px;
}
.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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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_zawartości > .ciało_strona > p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{
margin-top:0.6em;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .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;
}
i6a7yi2auphlw93q418zxtkaiva6oar
437301
437300
2022-08-09T13:18:21Z
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{
height:100% !important;
max-height:100% !important;
/*width:auto;*/
max-width:696px;
}
.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{
max-width:700px !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{
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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_zawartości > .ciało_strona > p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{
margin-top:0.6em;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .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;
}
sbyo2xwcqttkoqzw3oz65d0gett7do0
437302
437301
2022-08-09T13:19:01Z
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;
}
.strona_prawa .spis > div:not(.pierwsza_strona) > table.spis_treści > tbody > tr > td > div.toc_spis.mw-scrollbar-overflow-x{
width:100%;
max-width:700px;
}
.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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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_zawartości > .ciało_strona > p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{
margin-top:0.6em;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .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;
}
i6a7yi2auphlw93q418zxtkaiva6oar
437303
437302
2022-08-09T13:21:02Z
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:696px;
}
.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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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_zawartości > .ciało_strona > p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{
margin-top:0.6em;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .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;
}
6nuuxu2dv6jof26sj5zio5vu6xwlq3v
437306
437303
2022-08-09T13:40:16Z
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:696px;
}
.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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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_zawartości > .ciało_strona > p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{
margin-top:0.6em;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .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;
}
2nc43zkpv7lku0m3u4cqyt17697l75d
437307
437306
2022-08-09T13:41:14Z
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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, z-index 500ms ease-out, linear;
transition-property: transform, max-width, width, max-height, height, z-index;
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_zawartości > .ciało_strona > p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{
margin-top:0.6em;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .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;
}
4328xs7pxj6sxoo46qr14sg0ohshv5q
437384
437307
2022-08-09T20:39:25Z
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 500ms ease-out, linear;
transition-property: transform;
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 500ms ease-out, linear;
transition-property: transform;
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 500ms ease-out, linear;
transition-property: transform;
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 500ms ease-out, linear;
transition-property: transform;
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_zawartości > .ciało_strona > p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p) + p,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).noprint + p{
margin-top:0.6em;
}
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).floatright + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tleft + p:first-of-type,
.strona > .ciało_kontener> .ciało_zawartości > .ciało_strona > :not(style):not(link):not(p).tright + p:first-of-type{
margin-top:0;
}
.strona > .ciało_kontener> .ciało_zawartości > .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;
}
l4dswt7b6ezzrx8n2nlksdt4uqedb5p
Wikipedysta:Persino/common.js
2
58552
437288
437287
2022-08-09T11:59:52Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]);
});
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";
});
}
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]=(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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_right);
});
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_right);
});
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
cc5k6kp4wxzy7wv18w1p0d3ryyyv0ok
437290
437288
2022-08-09T12:11:42Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]);
});
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]=(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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_right);
});
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_right);
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
69b12mirwprj0w3jjsenu8zc40zzhbp
437291
437290
2022-08-09T12:19:52Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]);
});
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]=(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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_right);
});
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
lxou4rvjadjkmdlzfsozti0w1plcsc6
437292
437291
2022-08-09T12:23:34Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]);
});
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]=(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
28ceomzihrjcwjqgd77g6gzfhhqfksm
437304
437292
2022-08-09T13:34:02Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]);
});
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]=(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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";
/**/
element_g.style[height]=(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
tciar74a65w96ymd793ycvey91ydh1g
437305
437304
2022-08-09T13:35:43Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]);
});
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]=(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
28ceomzihrjcwjqgd77g6gzfhhqfksm
437308
437305
2022-08-09T13:43:04Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]);
});
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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
9v4zlj9hzs0i3tgqko1rxd0u00y74bj
437309
437308
2022-08-09T13:48:28Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]);
});
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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
0vu13o3zul9aaj3jq2i3c7dnr69ynla
437310
437309
2022-08-09T13:49:33Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]);
});
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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
9v4zlj9hzs0i3tgqko1rxd0u00y74bj
437312
437310
2022-08-09T16:30: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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]);
});
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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
8j89l067qvmyre3hettz8cc2gu8qm43
437313
437312
2022-08-09T16:33:17Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]);
});
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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
f5t6w97v1hcudyotigpaipjr98d6e7h
437314
437313
2022-08-09T16:44:19Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
ng0cpw2ldflewdqjnxyi6j1402okfo7
437315
437314
2022-08-09T16:49:53Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
gg2ehzp9of1dgo7lpmo477ep7i4wtlx
437332
437315
2022-08-09T17:55:12Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen]);
$(css).on(zdarzenie,Common[funkcja_zdarzen_kopia])
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
8w3zmollmp0szk1g1e2cwjqhj38x8fu
437333
437332
2022-08-09T17:57:27Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
//setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
//$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen]);
$(css).on(zdarzenie,Common[funkcja_zdarzen_kopia])
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
mn24hj1vp9otgv4mxj86kmc0xpq8bac
437334
437333
2022-08-09T17:58:19Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
//Common[funkcja_zdarzen_kopia]=function(){
//setTimeout(Common[funkcja_zdarzen],500);
//}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
//$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen]);
$(css).on(zdarzenie,Common[funkcja_zdarzen_kopia])
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
mpo8dmd902gj1z9xncgfxscoiodasuf
437335
437334
2022-08-09T17:59:32Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
//Common[funkcja_zdarzen_kopia]=function(){
//setTimeout(Common[funkcja_zdarzen],500);
//}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
//if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
//$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
//}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen]);
// $(css).on(zdarzenie,Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
mxbfyqgmo4c80rxlel3nnx50a2hrg4g
437336
437335
2022-08-09T18:00:38Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
//var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
//Common[funkcja_zdarzen_kopia]=function(){
//setTimeout(Common[funkcja_zdarzen],500);
//}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
//if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
//$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
//}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen]);
// $(css).on(zdarzenie,Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
n2ar7o38po2yrs1cz388g6cgrccdm68
437337
437336
2022-08-09T18:01:50Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
//var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
//Common[funkcja_zdarzen_kopia]=function(){
//setTimeout(Common[funkcja_zdarzen],500);
//}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
//$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
//if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
//$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
//}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen]);
// $(css).on(zdarzenie,Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
o9etwbvtho04mv52k502nvmmqlnsxew
437338
437337
2022-08-09T18:02: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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
//var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
//Common[funkcja_zdarzen_kopia]=function(){
//setTimeout(Common[funkcja_zdarzen],500);
//}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
//if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
// $(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
//}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen]);
// $(css).on(zdarzenie,Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
oz9itzw8huwtnm1q5z4s9jzn8yv675b
437339
437338
2022-08-09T18:04:49Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
//setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
//if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
// $(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
//}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen]);
// $(css).on(zdarzenie,Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
21fhzokqdnyw7mtjcb4r2j2tzjo6omb
437340
437339
2022-08-09T18:06:03Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
//if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
// $(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
//}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen]);
// $(css).on(zdarzenie,Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
nrwhfmdxuvq61emly79000yq8ezktqs
437341
437340
2022-08-09T18:07:38Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen]);
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
q6nje01odrp2y5yz0475ull2hs0goei
437343
437341
2022-08-09T18:11:25Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
Common[funkcja_zdarzen]();
setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
tddwo5r9gjczhkh079y0kzs6e9ka485
437344
437343
2022-08-09T18:14:15Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
Common[funkcja_zdarzen]();
setTimeout(Common[funkcja_zdarzen],250);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
8e6m3wndwa0jamm46hnhwpqm5vj14rh
437345
437344
2022-08-09T18:19:37Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
Common[funkcja_zdarzen]();
setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
cyarma7ssp75wbjqgsqp1j3d5at4f3z
437346
437345
2022-08-09T18:22:59Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
Common[funkcja_zdarzen]();
setTimeout(Common[funkcja_zdarzen],250);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,250);
});
$(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=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,250);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,250);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
448f54luviyfpmwjvwe92as6zlqhmzd
437347
437346
2022-08-09T18:25:24Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],250);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,250);
});
$(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=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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,250);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,250);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
0busnthdkqntzm448l3nu4c2ui0tw4p
437348
437347
2022-08-09T18:26:43Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],250);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,250);
});
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,250);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,250);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
gawa9tvyrdofknssopljz5rjwp46ime
437349
437348
2022-08-09T18:27:18Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
0dy131r0w4nhbbf7zshg6r1ceaujqfs
437350
437349
2022-08-09T18:29:53Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(Common.ScrollBarOverflow,500);
});
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
qmrsijk8ygguqs765965v43j2eeqh5i
437352
437350
2022-08-09T19:02:40Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(Common.ScrollBarOverflow,500);
});
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
pfyss4hjh69c1wbnucuybcq4o3wdx6b
437353
437352
2022-08-09T19:03:34Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(Common.ScrollBarOverflow,500);
});
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
qmrsijk8ygguqs765965v43j2eeqh5i
437354
437353
2022-08-09T19:11:30Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(Common.ScrollBarOverflow,500);
});
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
//Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
euz4qoaek2rjzoosugb3w4015qysvrv
437355
437354
2022-08-09T19:12:04Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(Common.ScrollBarOverflow,500);
});
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
//Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
//Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
0k4zswvuvd5h9t780wxke6e5g5lak99
437356
437355
2022-08-09T19:12:50Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(Common.ScrollBarOverflow,500);
});
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
qmrsijk8ygguqs765965v43j2eeqh5i
437357
437356
2022-08-09T19:16:46Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(Common.ScrollBarOverflow,500);
});
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(Common.StickyXY,500);
});
$(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){
if(pozycje_paskow[i][0].scrollTop==0)pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1];
if(pozycje_paskow[i][0].scrollLeft==0)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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
ph44f9pc3slx8bnxsb4g7zb5jun45h5
437358
437357
2022-08-09T19:20:38Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(Common.ScrollBarOverflow,500);
});
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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){
if(pozycje_paskow[i][0].scrollTop==0)pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1];
if(pozycje_paskow[i][0].scrollLeft==0)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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(Common.StickyXY,500);
});
$(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){
if(pozycje_paskow[i][0].scrollTop==0)pozycje_paskow[i][0].scrollTop=pozycje_paskow[i][1];
if(pozycje_paskow[i][0].scrollLeft==0)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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
86u88b2l9fhiqg8a51qn4qeo9rregen
437359
437358
2022-08-09T19:22: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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],500);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(Common.ScrollBarOverflow,500);
});
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
ng20cqqslnfdq9xsvzn4vesiita6x3l
437360
437359
2022-08-09T19:25:49Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],1000);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(Common.ScrollBarOverflow,1000);
});
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(Common.StickyXY,1000);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(Common.OptimalXY,1000);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
6e42bzl22pa8bo4a5744yumhatltfzl
437361
437360
2022-08-09T19:27:29Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],250);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(Common.ScrollBarOverflow,250);
});
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(Common.StickyXY,250);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(Common.OptimalXY,250);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
1dx9iei0ihe07w62aqtzru7kxhuxlde
437362
437361
2022-08-09T19:29:04Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],100);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(Common.ScrollBarOverflow,100);
});
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(Common.StickyXY,100);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(Common.OptimalXY,100);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
0mlsm2prmrqihgpv5055w7paiuc3bho
437363
437362
2022-08-09T19:29:56Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],1000);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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:1000px;"></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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(Common.ScrollBarOverflow,1000);
});
$(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]="1000%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(Common.StickyXY,1000);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(Common.OptimalXY,1000);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=1000;
setTimeout(Czekaj,1000);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
dxgd6lonhmu17jptg1spdnq9owawqhm
437365
437363
2022-08-09T19:33:53Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],1000);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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:1000px;"></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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(Common.ScrollBarOverflow,1000);
});
$(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){
$(element_g).css('visibility','hidden');
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]="1000%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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).css('visibility','visible');
}
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(Common.StickyXY,1000);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(Common.OptimalXY,1000);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=1000;
setTimeout(Czekaj,1000);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
l6csjldfoetd3niif1kh0gciqlujm2e
437366
437365
2022-08-09T19:34:31Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(Common[funkcja_zdarzen],1000);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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:1000px;"></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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(Common.ScrollBarOverflow,1000);
});
$(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]="1000%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(Common.StickyXY,1000);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(Common.OptimalXY,1000);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=1000;
setTimeout(Czekaj,1000);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
dxgd6lonhmu17jptg1spdnq9owawqhm
437367
437366
2022-08-09T19:38:06Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(function(){
$(Common[funkcja_zdarzen]);
},1000);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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:1000px;"></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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(Common.ScrollBarOverflow,1000);
});
$(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]="1000%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(Common.StickyXY,1000);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(Common.OptimalXY,1000);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=1000;
setTimeout(Czekaj,1000);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
50iw3ys52mxh56m2j692tdn625ds7ua
437368
437367
2022-08-09T19:42:45Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(function(){
$(Common[funkcja_zdarzen]);
},1000);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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:1000px;"></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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(function(){
$(Common.ScrollBarOverflow);
},1000);
});
$(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]="1000%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(function(){
$(Common.StickyXY);
},1000);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(function(){
$(Common.OptimalXY);
},1000);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=1000;
setTimeout(Czekaj,1000);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
9csbhbucahss1r66328g8a08s5iiyv6
437369
437368
2022-08-09T19:47:18Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(function(){
$(Common[funkcja_zdarzen]);
},250);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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:250px;"></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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(function(){
$(Common.ScrollBarOverflow);
},250);
});
$(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]="250%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(function(){
$(Common.StickyXY);
},250);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(function(){
$(Common.OptimalXY);
},250);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=250;
setTimeout(Czekaj,250);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
5jcn0fir053tghomtpmhhxtwiovdlfp
437370
437369
2022-08-09T19:53:43Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(function(){
$(Common[funkcja_zdarzen]);
},300);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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:300px;"></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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(function(){
$(Common.ScrollBarOverflow);
},300);
});
$(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]="300%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(function(){
$(Common.StickyXY);
},300);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(function(){
$(Common.OptimalXY);
},300);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=300;
setTimeout(Czekaj,300);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
68n4jb8kj6mafxvp9eps7c2dh4m84ii
437371
437370
2022-08-09T19:55:47Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(function(){
$(Common[funkcja_zdarzen]);
},750);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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:750px;"></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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(function(){
$(Common.ScrollBarOverflow);
},750);
});
$(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]="750%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(function(){
$(Common.StickyXY);
},750);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(function(){
$(Common.OptimalXY);
},750);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>75000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=750;
setTimeout(Czekaj,750);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
8864tsk8a8w2gppabrk393eynqq2aa3
437372
437371
2022-08-09T19:57:09Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
var funkcja_zdarzen_kopia=funkcja_zdarzen+'PoCzasie';
Common[funkcja_zdarzen_kopia]=function(){
$(Common[funkcja_zdarzen]);
setTimeout(function(){
$(Common[funkcja_zdarzen]);
},400);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
/*Odrejestrowanie zdarzeń z tylko funkcjami*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen_kopia])){
/*Odrejestrowanie zdarzeń wywołania samej funkcji i wywołanie tejże funkcji po czasie*/
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen_kopia]);
}
if((Common)&&(Common[funkcja_zdarzen])&&(Common[funkcja_zdarzen_kopia])){
/*Rejestrowanie zdarzeń, ale z tej strony .js*/
$(css).on(zdarzenie, Common[funkcja_zdarzen_kopia]);
}
}
});
}
/*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, czy nastąpiło przepełnienie poziome lub pionowe*/
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:400px;"></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*/
});
}
$(function(){
$(Common.ScrollBarOverflow);
setTimeout(function(){
$(Common.ScrollBarOverflow);
},400);
});
$(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]="400%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
$(Common.StickyXY);
setTimeout(function(){
$(Common.StickyXY);
},400);
});
$(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");
}
});
}
$(function(){
$(Common.OptimalXY);
setTimeout(function(){
$(Common.OptimalXY);
},400);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>40000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=400;
setTimeout(Czekaj,400);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
f4c8dmk2lqq4evfoiwrffoltf0xpjz5
437373
437372
2022-08-09T19:58:57Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]);
});
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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
9v4zlj9hzs0i3tgqko1rxd0u00y74bj
437374
437373
2022-08-09T20:01: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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(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').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]);
});
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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(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");
}
});
}
$(Common.OptimalXY);
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
is66kl6oun8gmrjghgh9008xl5l1vbk
437375
437374
2022-08-09T20:02:45Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(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");
}
});
}
$(Common.OptimalXY);
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
8sj78vbfovjpuh290paelquej1o9tp4
437376
437375
2022-08-09T20:06:30Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(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");
}
});
}
$(Common.OptimalXY);
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz,inne){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
if(!inne){
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
}
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("body.skin-vector-search-vue .vector-sticky-header",'StickyXY',true);
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('body.skin-vector-search-vue .vector-sticky-header','OptimalXY',true);
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*body.skin-vector-search-vue .vector-sticky-header','ScrollBarOverflow',true)
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
h96kuhatt063lu7kczgsdmf9upweu2f
437377
437376
2022-08-09T20:10: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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(function(){
Common.ScrollBarOverflow();
setTimeout(Common.ScrollBarOverflow,500);
});
$(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').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]);
});
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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(function(){
Common.StickyXY();
setTimeout(Common.StickyXY,500);
});
$(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");
}
});
}
$(function(){
Common.OptimalXY();
setTimeout(Common.OptimalXY,500);
});
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
9v4zlj9hzs0i3tgqko1rxd0u00y74bj
437378
437377
2022-08-09T20:12:43Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(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').each(function(i,el){
var rect_sticky=el.getBoundingClientRect();
height_sticky=parseInt(rect_sticky[height]);
});
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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(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");
}
});
}
$(Common.OptimalXY);
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz,inne){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
if(!inne){
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
}
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("body.skin-vector-search-vue .vector-sticky-header",'StickyXY',true);
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('body.skin-vector-search-vue .vector-sticky-header','OptimalXY',true);
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*body.skin-vector-search-vue .vector-sticky-header','ScrollBarOverflow',true)
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
l5x8m0vttp9ch9cgmau2ps1inhm6u4z
437379
437378
2022-08-09T20:15:35Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(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");
}
});
}
$(Common.OptimalXY);
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz,inne){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
if(!inne){
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
}
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("body.skin-vector-search-vue .vector-sticky-header",'StickyXY',true);
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('body.skin-vector-search-vue .vector-sticky-header','OptimalXY',true);
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*body.skin-vector-search-vue .vector-sticky-header','ScrollBarOverflow',true)
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
6sc99ekfxgcxdtqlri3meyjzayc8mgi
437380
437379
2022-08-09T20:20:05Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(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");
}
});
}
$(Common.OptimalXY);
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz,inne){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
if(!inne){
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
}
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("body.skin-vector-search-vue .vector-sticky-header",'StickyXY',true);
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
tszv8k4p3r4qtmvybq3x9cocqp759ax
437381
437380
2022-08-09T20:27:21Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(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");
}
});
}
$(Common.OptimalXY);
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz,inne){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("body.skin-vector-search-vue .vector-sticky-header",'StickyXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
29p2zqwujp7b6zav4bzvgehapcbqr8b
437382
437381
2022-08-09T20:29:53Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(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");
}
});
}
$(Common.OptimalXY);
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz,inne){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
if(!inne){
Common.ZdarzeniaJavaScript(css,'mouseenter',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'mouseleave',fun_zdarz);
}
Common.ZdarzeniaJavaScript(css,'transitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionstart',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionrun',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitioncancel',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("body.skin-vector-search-vue .vector-sticky-header",'StickyXY',true);
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
tszv8k4p3r4qtmvybq3x9cocqp759ax
437383
437382
2022-08-09T20:36: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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(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");
}
});
}
$(Common.OptimalXY);
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("body.skin-vector-search-vue .vector-sticky-header",'StickyXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
jpqc0rkjacigxspzoigr8wzxluf6zw3
437385
437383
2022-08-09T21:00:43Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(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");
}
});
}
$(Common.OptimalXY);
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
$(css).off();
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("body.skin-vector-search-vue .vector-sticky-header",'StickyXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
cupqjknvv75vqzfcsh5ej7g7bd6f0dr
437386
437385
2022-08-09T21:03:05Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(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%";//(element_g["offset"+(height.replace(/^(.)/g,function(s){return s.toUpperCase();}))])+"px";
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);
}
});
}
$(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");
}
});
}
$(Common.OptimalXY);
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("body.skin-vector-search-vue .vector-sticky-header",'StickyXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
9tkewn36rx35njvwm7kiylbu66qa1lf
437387
437386
2022-08-09T21:07:38Z
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_zmienne_stare=this['Common'];
/*Przestrzeń nazw: Common, zdefiniowanym za pomocą tablicy*/
var Common=new Array();
// Frame Busting
Common.LokowanieTopSelf=function(){
if (top != self) top.location.href = self.location.href;
};
$(Common.LokowanieTopSelf);
/*Funkcja zdarzeń odrejestrowania i rejestrowania*/
Common.ZdarzeniaJavaScript=function(css,zdarzenie,funkcja_zdarzen){
$(function(){
if((css)&&(zdarzenie)&&(funkcja_zdarzen)){
/*Odrejestrowanie zdarzeń o nazwie: funkcja_zdarzen, ale z innej strony .js jak: Common.StickyXY*/
if((common_zmienne_stare)&&(common_zmienne_stare[funkcja_zdarzen])){
$(css).off(zdarzenie,common_zmienne_stare[funkcja_zdarzen]);
}
if((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, czy nastąpiło przepełnienie poziome lub pionowe*/
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*/
});
}
$(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);
}
});
}
$(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");
}
});
}
$(Common.OptimalXY);
$(function(){
/*Zdarzenia*/
Common.ZdarzeniaJavaScript(window,"scroll",'OptimalXY');
Common.ZdarzeniaJavaScript(window,"resize",'OptimalXY');
});
/*Uruchamianie 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 kalkulacyjny CSS*/
Common.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu){
$(obiekt).each(function(i,element_f){
return new Promise(function(resolve,reject){
var czas=0;
function Czekaj(){
if(czas>30000){
reject();
}
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
var tabele_lub_ramki=collapsebutton.parents('#'+id_tabeli_lub_ramki+i);
if((tabele_lub_ramki===null)||(tabele_lub_ramki.length==0)){reject();}
resolve(i);
}else{
czas+=100;
setTimeout(Czekaj,100);
}
}
Czekaj();
}).then(function(i){
$('*.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');
}
}
}
});
}).catch(function(){});
});
};
$(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 dodatkowych funkcji*/
});
/*Uruchamianie dodatkowych zdarzeń do Common.StickyXY i Common.OptimalXY*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY=function(css,fun_zdarz){
/*Zdarzenia dodatkowe - odrejestrowanie wcześniejszych zdarzeń i rejestrowanie następnych*/
Common.ZdarzeniaJavaScript(css,'transitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'webkittransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'moztransitionend',fun_zdarz);
Common.ZdarzeniaJavaScript(css,'otransitionend',fun_zdarz);
};
$(function(){
/*Funkcje zdarzeń*/
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY');
Common.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("body.skin-vector-search-vue .vector-sticky-header",'StickyXY');
});
/*Koniec dodatkowych zdarzeń*/
/*Program do obsługi szablonu StronaStart i jego pokrewnych książkowych*/
Common.StronaStart=function(){
var elements=$('.strona_start .strona .ciało_zawartości > .menu > .menu_boks');
elements.parent().show();
$('.strona_start').find('.strona_lewa .nawigacja_boksy, .strona_prawa .nawigacja_boksy').each(function(i,element){
$(element).css('visibility',"hidden");
});
$('.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");
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);
}
});
function StronaStartFun(){
var id=this;
$(id).parents('.strona_start').first().find('.strona .ciało_zawartości > .menu > .menu_boks').children().each(function(i,element){
var display=$(element).css('display');
if(display=="none"){
$(element).css('display',"block");
}else{
$(element).css('display',"none");
}
});
$(id).parents('.strona_start').first().find('.strona_lewa, .strona_prawa').children().each(function(i,element){
var visibility=window.getComputedStyle(element, null).getPropertyValue('visibility');
if(visibility=="hidden"){
$(element).css('visibility',"visible");
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{
$(element).css('visibility',"hidden");
}
});
}
elements.off('click');
elements.on('click',StronaStartFun);
}
$(Common.StronaStart);
4jhu4i9wsm6yfw95f3jwwhpotmb85sd