Wikipedysta:Persino/Gadget-DodatkiSkrypt3.js/Boksy.js
Uwaga: aby zobaczyć zmiany po opublikowaniu, może zajść potrzeba wyczyszczenia pamięci podręcznej przeglądarki.
- Firefox / Safari: Przytrzymaj Shift podczas klikania Odśwież bieżącą stronę, lub naciśnij klawisze Ctrl+F5, lub Ctrl+R (⌘-R na komputerze Mac)
- Google Chrome: Naciśnij Ctrl-Shift-R (⌘-Shift-R na komputerze Mac)
- Internet Explorer / Edge: Przytrzymaj Ctrl, jednocześnie klikając Odśwież, lub naciśnij klawisze Ctrl+F5
- Opera: Naciśnij klawisze Ctrl+F5.
/*Funkcje w przestrzeni nazw DodatkiSkrypt*/
DodatkiSkrypt.Boksy=new Array();
DodatkiSkrypt.Boksy.NapisWprowadzeniaTekstu=function(){
/* Skrypt odpowiedzialny za wyświetlanie szablonu Nagłówek [[Szablon:Nagłówek]] */
function SzablonNapisWprowadzeniaTekstu(jak_wstawiac){
var strona_start=((jak_wstawiac)?($('body.action-view, body.action-submit').find('#mw-content-text .mw-parser-output .strona_start')):($('body.action-view, body.action-submit').find('#mw-content-text .mw-parser-output')));
strona_start.each(function(i,element){
var mojnaglowek=$(element).find('.mójNagłówek');
var naglowki_inne=$(element).find('.strona_start').find(mojnaglowek);
if(naglowki_inne.length==0){
var stopka=mojnaglowek.find('.mojaStopka');
if(stopka.length==0){
var moja_stopka=jak_wstawiac?$(element).find('.strona').first().find(' > .mojaStopka').first():$('#content .mojaStopka');
moja_stopka.each(function(i,element){
if(jak_wstawiac){
var stopka=element.cloneNode(true);
mojnaglowek.find(' > div:first-child').append(stopka);
$(element).remove();
}else{
var czy_w_przestrzeni_tekstu=$('body.action-view, body.action-submit').find('#mw-content-text .mw-parser-output').find(element);
if(czy_w_przestrzeni_tekstu.length==0){
var stopka=element.cloneNode(true);
mojnaglowek.find(' > div:first-child').append(stopka);
$(element).remove();
}
}
});
}
}
});
strona_start.each(function(i,element){
var hideAll1 = $(element).find('.mójNagłówekUkryj');
var hideAll2=$(element).find('.strona_start').find(hideAll1);
var czy_hideAll=((hideAll1.length>0)&&(hideAll1.length-hideAll2.length>0));
var noFooter = false;
var footers = 0;
$(element).find('div').each(function(k,el){;
var str=$(element).find('.strona_start').find(el);
if(str.length==0){
if($(el).hasClass('mojaStopka')){
footers++;
}else if ((czy_hideAll) && ($(el).hasClass('mójNagłówek'))) {
$(el).css('display',"none");
noFooter=true;
}
}
});
if (noFooter){return;}
if(footers==1){
$(element).find('.mójNagłówek').each(function(i,element_naglowek){
var czy_naglowek=$(element).find('.strona_start').find(element_naglowek)
if(czy_naglowek.length==0){
var s0=$(element_naglowek).find('.mojaStopka0');var s1=$(element_naglowek).find('.mojaStopka1');
var s01=$(element).find('.strona_start').find(s0);var s11=$(element).find('.strona_start').find(s1);
if((s01.length==0)&&(s11.length==0)){
var czy_s0=((s01.length==0)?(s0.length>0):false);var czy_s1=((s11.length==0)?(s1.length>0):false);
var str_element=jak_wstawiac?($(element).find('> div > .główna_strona > .strona_środkowa > .strona > .ciało_kontener > .ciało_strona')):($(element));
if(str_element.length>0){
var zawartosc=str_element[0].cloneNode(true);
$(zawartosc).find('.strona_start').remove();
if((czy_s1)||((!czy_s0)&&(zawartosc.innerHTML.length>8000))){
$(element).find('.mojaStopka').each(function(i,element_stopka){
var stopka=$(element).find('.strona_start').find(element_stopka);
if(stopka.length==0){
var moja_stopka=$(element).find('.mójNagłówek').find('.mojaStopka');
var nie_w_strona_start_moja_stopka=$(element).find('.strona_start').find(moja_stopka);
if((moja_stopka.length>0)&&(nie_w_strona_start_moja_stopka.length==0)){
var stopka=moja_stopka[0].cloneNode(true);
if(jak_wstawiac){
$(element).find('.strona').first().append(stopka);
}else{
if($('body.action-view').length>0){
var rodzic=$('body.action-view #mw-content-text .mw-parser-output').parent().first();
if(rodzic.find('> .printfooter').length>0){
rodzic.find('> .printfooter').first().before(stopka);
}else{
rodzic.append(stopka);
}
}
$('body.action-submit #mw-content-text .mw-parser-output').parent().first().append(stopka);
}
}
}
});
}
}
}
}
});
}
});
};
SzablonNapisWprowadzeniaTekstu(true);
SzablonNapisWprowadzeniaTekstu(false);
};
/* Koniec skryptu odpowiedzialnego za wyświetlanie szablonu Nagłówek [[Szablon:Nagłówek]] */
$(DodatkiSkrypt.Boksy.NapisWprowadzeniaTekstu);
/*Funkcja do liczenia szerokościm mapska przewijania w pionowego, wtedy x_box_right=="y", lub poziomego, wtedy inny parametr inny niż dla paska pionowego*/
DodatkiSkrypt.Boksy.PobieranieFormatuPaskaPrzewijaniaOkienka=function(x_box_right){
var div = $('<div style="width:50px;height:50px;overflow:hidden;position:absolute;top:-200px;left:-200px;"><div style="'+((x_box_right=="y")?"height":"width")+':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*/
DodatkiSkrypt.Boksy.ScrollBarOverflow=function(){
$('*.mw-overflow-x, *.mw-overflow-y').each(function(i,element_g){
/*start overflow*/
function ScrollBarOverflow(){
var comp=window.getComputedStyle(element_g, null);
var display=comp.getPropertyValue("display");
if(display=="none"){return;}
var overflow_x=$(element_g).hasClass('mw-overflow-x');
if(overflow_x){
var overflowX=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=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*/
}
ScrollBarOverflow();
var config = {
childList:true,
characterData: true,
};
var newObserver = new MutationObserver(function(records, observer){
observer.disconnect();
ScrollBarOverflow();
newObserver.observe(element_g, config);
});
newObserver.observe(element_g, config);
});
}
$(DodatkiSkrypt.Boksy.ScrollBarOverflow);
DodatkiSkrypt.Boksy.IsBlankElement=function(element){
var tekst=element.innerHTML.replace(/\n/g,"").replace(/<!--.*-->/g,"");
var czy_blank=/^\s*$/g.test(tekst);
return czy_blank;
}
DodatkiSkrypt.Boksy.IsOnlyWhiteSpaceElement=function(element){
var element2=document.createElement('div');
element2.innerHTML=element.innerHTML;
element2.innerHTML=element2.innerHTML.replace(/ /g," ").replace(/ /g," ");
var czy_whitespace=DodatkiSkrypt.Boksy.IsBlankElement(element2);
return czy_whitespace;
}
DodatkiSkrypt.Boksy.IsBlank=function(){
$(".is-blank").each(function(i,element){
function IsBlank(){
var czy_blank=DodatkiSkrypt.Boksy.IsBlankElement(element);
if(czy_blank){ element.classList.add("blank");}else{element.classList.remove("blank");}
}
IsBlank();
var config = {
childList:true,
characterData: true,
};
var newObserver = new MutationObserver(function(records, observer){
observer.disconnect();
IsBlank();
newObserver.observe(element, config);
});
newObserver.observe(element, config);
});
}
$(DodatkiSkrypt.Boksy.IsBlank);
DodatkiSkrypt.Boksy.IsOnlyWhiteSpace=function(){
$('.is-only-whitespace').each(function(i,element){
function IsOnlyWhiteSpace(){
var czy_whitespace=DodatkiSkrypt.Boksy.IsOnlyWhiteSpaceElement(element);
if(czy_whitespace){
element.classList.add('only-whitespace');
}else{
element.classList.remove('only-whitespace');
}
}
IsOnlyWhiteSpace();
var config = {
childList:true,
characterData: true,
};
var newObserver = new MutationObserver(function(records, observer){
observer.disconnect();
IsOnlyWhiteSpace();
newObserver.observe(element, config);
});
newObserver.observe(element, config);
});
}
$(DodatkiSkrypt.Boksy.IsOnlyWhiteSpace);
DodatkiSkrypt.Boksy.IsFirstChild=function(){
function ParserClass(){
$('.is-first-child').each(function(i,element){
var parser=$(element).parent().children('.is-first-child');
var p=0;
var klasa=undefined;
var classlist=element.classList;
for(var s=0;s<classlist.length;++s){
if(/^parser-(.*)$/g.test(classlist[s])){
klasa=classlist[s].replace(/^parser-/g,"");
}
}
if(!klasa){return;}
for(var i=0;i<parser.length;++i){
if(i==p){
if(($(parser[i]).hasClass('blank'))||(!$(parser[i]).hasClass(klasa))||(!$(parser[i]).hasClass("parser-"+klasa))){
++p;
}
}
if(($(parser[i]).hasClass('is-first-child'))&&($(parser[i]).hasClass(klasa))&&($(parser[i]).hasClass("parser-"+klasa))){
if(i==p){
$(parser[i]).addClass('first-child');
}else{
$(parser[i]).removeClass('first-child');
}
}
}
});
}
ParserClass();
var config = {
childList:true,
};
$(".is-last-child").parent().each(function(i,element){
var newObserver = new MutationObserver(function(records, observer){
observer.disconnect();
ParserClass();
newObserver.observe(element, config);
});
newObserver.observe(element, config);
});
}
$(DodatkiSkrypt.Boksy.IsFirstChild);
DodatkiSkrypt.Boksy.IsLastChild=function(){
function ParserClass(){
$('.is-last-child').each(function(i,element){
var parser=$(element).parent().children('.is-last-child');
var p=parser.length-1;
var klasa=undefined;
var classlist=element.classList;
for(var s=0;s<classlist.length;++s){
if(/^parser-(.*)$/g.test(classlist[s])){
klasa=classlist[s].replace(/^parser-/g,"");
}
}
if(!klasa){return;}
for(var i=parser.length-1;i>=0;--i){
if(i==p){
if(($(parser[i]).hasClass('blank'))||(!$(parser[i]).hasClass(klasa))||(!$(parser[i]).hasClass("parser-"+klasa))){
--p;
}
}
if(($(parser[i]).hasClass('is-last-child'))&&($(parser[i]).hasClass(klasa))&&($(parser[i]).hasClass("parser-"+klasa))){
if(i==p){
$(parser[i]).addClass('last-child');
}else{
$(parser[i]).removeClass('last-child');
}
}
}
});
}
ParserClass();
var config = {
childList:true,
};
$(".is-last-child").parent().each(function(i,element){
var newObserver = new MutationObserver(function(records, observer){
observer.disconnect();
ParserClass();
newObserver.observe(element, config);
});
newObserver.observe(element, config);
});
}
$(DodatkiSkrypt.Boksy.IsLastChild);
/*Uruchamianie funkcji DodatkiSkrypt.Boksy.ScrollBarOverflow*/
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji DodatkiSkrypt.Boksy.ScrollBarOverflow*/
$(function(){
/*Zdarzenia*/
DodatkiSkrypt.Zdarzenia.ZdarzeniaJavaScript(window,'scroll', 'ScrollBarOverflow',null,DodatkiSkrypt.PodTablicaDodatkiSkrypt(true,'Boksy'),DodatkiSkrypt.PodTablicaDodatkiSkrypt(false,'Boksy'));
DodatkiSkrypt.Zdarzenia.ZdarzeniaJavaScript(window,'resize', 'ScrollBarOverflow',null,DodatkiSkrypt.PodTablicaDodatkiSkrypt(true,'Boksy'),DodatkiSkrypt.PodTablicaDodatkiSkrypt(false,'Boksy'));
});
DodatkiSkrypt.Boksy.DanePozycjiWszyskichLiniiPrzewijaniaZFormatuOkienka=function(){
var pozycje_paskow;
this.ZerujZebraneDane=function(){
pozycje_paskow=new Array();
}
this.ZbierzPozycje=function(element_g){
var comp=window.getComputedStyle(element_g, null);
//var overflow=comp.getPropertyValue("overflow");
var overflow_x=comp.getPropertyValue("overflow-x");
var overflow_y=comp.getPropertyValue("overflow-y");
if((overflow_x=="auto")||(overflow_x=="scroll")||(overflow_y=="auto")||(overflow_y=="scroll")){
pozycje_paskow.push(new Array(element_g,element_g.scrollTop,element_g.scrollLeft));
}
$(element_g).find('*').each(function(i,element){
var comp=window.getComputedStyle(element, null);
//var overflow=comp.getPropertyValue("overflow");
var overflow_x=comp.getPropertyValue("overflow-x");
var overflow_y=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));
}
});
}
this.UstawPozycje=function(){
for(var i in pozycje_paskow){
var element_tab=pozycje_paskow[i];
var element=element_tab[0];
element.scrollTop=element_tab[1];
element.scrollLeft=element_tab[2];
}
}
}
var muteks_boksy=new DodatkiSkrypt.Muteks();
zmienne.muteks_boksy=muteks_boksy;
/*Funkcja symulująca właściwości position:sticky, wszędzie tam, gdzie nie można go użyć.*/
DodatkiSkrypt.Boksy.StickyXY=function(event,element,generowane_korutyny_2){
return $(document).DodatkiSkryptReady(function(){
$('#mw-content-text .mw-parser-output').find('*.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 pasek=new DodatkiSkrypt.Boksy.DanePozycjiWszyskichLiniiPrzewijaniaZFormatuOkienka();
pasek.ZerujZebraneDane();
pasek.ZbierzPozycje(element_g);
var height_sticky=0;
$('html.client-js.vector-sticky-header-enabled body.skin-vector-search-vue.vector-sticky-header-visible div.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";
DodatkiSkrypt.Boksy.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();}))]+DodatkiSkrypt.Boksy.PobieranieFormatuPaskaPrzewijaniaOkienka(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";
DodatkiSkrypt.Boksy.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();}))]+DodatkiSkrypt.Boksy.PobieranieFormatuPaskaPrzewijaniaOkienka(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";
DodatkiSkrypt.Boksy.ScrollBarOverflow();
pasek.UstawPozycje();
}
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);
}
});
return Promise.resolve();
},generowane_korutyny_2,muteks_boksy);
}
/*Uruchamianie funkcji DodatkiSkrypt StickyXY*/
jQuery(document).DodatkiSkryptSettledPromise(function(){
DodatkiSkrypt.Boksy.StickyXY();
});
jQuery(document).DodatkiSkryptSettledPromise(function(){
var element=$('body').first();
if(element.length==0){return;}
var config = {
//childList:true,
//characterData: true,
attributes:true,
//subtree: true,
attributeFilter: ["class"]
};
var element_body=element[0];
var newObserver = new MutationObserver(function(records, observer){
observer.disconnect();
DodatkiSkrypt.Boksy.StickyXY();
$(document).DodatkiSkryptReady(function(){
newObserver.observe(element_body, config);
},null,muteks_boksy);
});
newObserver.observe(element_body, config);
});
DodatkiSkrypt.Boksy.FunkcjaBoksowyMuteks=function(__FUNKCJA,...args){
return $(document).DodatkiSkryptReady(function(){
return __FUNKCJA(...args);
},null,muteks_boksy);
}
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji DodatkiSkrypt.Boksy.StickyXY*/
jQuery(document).DodatkiSkryptReady(function(){
/*Zdarzenia*/
DodatkiSkrypt.Zdarzenia.ZdarzeniaJavaScript(window,'scroll', 'StickyXY',null,DodatkiSkrypt.PodTablicaDodatkiSkrypt(true,'Boksy'),DodatkiSkrypt.PodTablicaDodatkiSkrypt(false,'Boksy'));
DodatkiSkrypt.Zdarzenia.ZdarzeniaJavaScript(window,'resize', 'StickyXY',null,DodatkiSkrypt.PodTablicaDodatkiSkrypt(true,'Boksy'),DodatkiSkrypt.PodTablicaDodatkiSkrypt(false,'Boksy'));
});
/*Funkcja do ustawiania maksymalnego rozmiaru dziecka, względem rodzica, przy position:absolute*/
DodatkiSkrypt.Boksy.OptimalXY=function(){
return $(document).DodatkiSkryptReady(function(){
$('#mw-content-text .mw-parser-output').find('*.mw-optimal-x, *.mw-optimal-y').each(function(i,element_g){
var comp=window.getComputedStyle(element_g, null);
function FunOptimalXY(width,left,right){
var pasek=new DodatkiSkrypt.Boksy.DanePozycjiWszyskichLiniiPrzewijaniaZFormatuOkienka();
pasek.ZerujZebraneDane();
pasek.ZbierzPozycje(element_g);
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');
}
}
}
pasek.UstawPozycje();
};
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");
}
});
return Promise.resolve();
},null,muteks_boksy);
}
/*Uruchamianie funkcji DodatkiSkrypt.Boksy.OptimalXY*/
jQuery(document).DodatkiSkryptSettledPromise(function(){
DodatkiSkrypt.Boksy.OptimalXY();
});
/*Uruchamianie zdarzeń dla elementu Window, używając funkcji OptimalXY*/
jQuery(document).DodatkiSkryptReady(function(){
/*Zdarzenia*/
DodatkiSkrypt.Zdarzenia.ZdarzeniaJavaScript(window,"scroll",'OptimalXY',null,DodatkiSkrypt.PodTablicaDodatkiSkrypt(true,'Boksy'),DodatkiSkrypt.PodTablicaDodatkiSkrypt(false,'Boksy'));
DodatkiSkrypt.Zdarzenia.ZdarzeniaJavaScript(window,"resize",'OptimalXY',null,DodatkiSkrypt.PodTablicaDodatkiSkrypt(true,'Boksy'),DodatkiSkrypt.PodTablicaDodatkiSkrypt(false,'Boksy'));
});
/*Spis treści TOC z paskiem nawigacji, usuwa pasek przewijania poziomy lub pionowy, albo powiększa bezpaskową szerokość, by jego linie tekstu zawartości możliwie nie załamywały się, by nie przechodziły do następnej linii, jeśli to możliwe*/
DodatkiSkrypt.Boksy.NotOverflowXY=function(){
function UsunieciePaskaOverflowXY(css,width_box,left,right,x_box){
var css_str=$(css);
if(css_str.length==0){return;};
var width_paska=DodatkiSkrypt.Boksy.PobieranieFormatuPaskaPrzewijaniaOkienka(x_box);
css_str.each(function(i,element){
/**/
var sticky_xy=$(element).parents('.mw-sticky-x, .mw-sticky-y, .mw-optimal-x, .mw-optimal-y').parents('.mw-parent-node.strona_prawa, .mw-parent-node.strona_lewa, .mw-parent-node.strona_górna, .mw-parent-node.strona_dolna').parents('.strona_start');
if(sticky_xy.length!=0){return;}
/**/
var pasek=new DodatkiSkrypt.Boksy.DanePozycjiWszyskichLiniiPrzewijaniaZFormatuOkienka();
pasek.ZerujZebraneDane();
pasek.ZbierzPozycje(element);
var comp=window.getComputedStyle(element, null);
var paddingleft=parseFloat(comp.getPropertyValue("padding-"+left));
var paddingright=parseFloat(comp.getPropertyValue("padding-"+right));
element.style[width_box]="auto";
var whitespace=element.style.whiteSpace;
element.style.whiteSpace="nowrap";
/**/
var czy_overflow_x_box=$(element).hasClass('mw-scrollbar-overflow-'+x_box);
element.style[width_box]=(element["scroll"+(width_box.replace(/^(.)/g,function(s){return s.toUpperCase();}))]+((czy_overflow_x_box)?(width_paska+paddingleft+paddingright):0))+"px";
/**/
element.style.whiteSpace=((whitespace)&&(whitespace!=""))?whitespace:"normal";
pasek.UstawPozycje();
});
}
function WysokoscOverFlowXY(css,top_str,height_str,width_str){
$(css).each(function(i,element){
/**/
var sticky_xy=$(element).parents('.mw-sticky-x, .mw-sticky-y, .mw-optimal-x, .mw-optimal-y').parents('.mw-parent-node.strona_prawa, .mw-parent-node.strona_lewa, .mw-parent-node.strona_górna, .mw-parent-node.strona_dolna').parents('.strona_start');
if(sticky_xy.length!=0){return;}
/**/
var display=window.getComputedStyle(element, null).getPropertyValue("display");
if(display=="none"){return;}
/**/
var pasek=new DodatkiSkrypt.Boksy.DanePozycjiWszyskichLiniiPrzewijaniaZFormatuOkienka();
pasek.ZerujZebraneDane();
pasek.ZbierzPozycje(element);
element.style["max"+(height_str.replace(/^(.)/g,function(s){return s.toUpperCase();}))]="100%";
element.style[height_str]="auto";
element.style[width_str]="auto";
var rect=element.getBoundingClientRect();
var top=rect[top_str];
var height=rect[height_str];
var wys=document.documentElement["client"+(height_str.replace(/^(.)/g,function(s){return s.toUpperCase();}))];
var nadwyzka_height=top+height-wys;
var height2=height-((nadwyzka_height>=0)?(nadwyzka_height+5):0);
element.style[height_str]=((height2>=0)?height2:0)+"px";
pasek.UstawPozycje();
});
}
return $(document).DodatkiSkryptReady(function(){
var css='#mw-content-text .mw-parser-output .mw-overflow-x.mw-not-overflow-x:not(.mw-not-overflow-y)';
UsunieciePaskaOverflowXY(css,"width","left","right","y");
var css='#mw-content-text .mw-parser-output .mw-overflow-y.mw-not-overflow-y:not(.mw-not-overflow-x)';
UsunieciePaskaOverflowXY(css,"height","top","bottom","x");
var css='#mw-content-text .mw-parser-output div.toclimit.mw-control-y';
WysokoscOverFlowXY(css,"top","height","width");
var css='#mw-content-text .mw-parser-output div.toclimit.mw-control-x';
WysokoscOverFlowXY(css,"left","width","height");
DodatkiSkrypt.Boksy.ScrollBarOverflow();
var css='#mw-content-text .mw-parser-output .mw-overflow-x.mw-not-overflow-x:not(.mw-not-overflow-y)';
UsunieciePaskaOverflowXY(css,"width","left","right","y");
var css='#mw-content-text .mw-parser-output .mw-overflow-y.mw-not-overflow-y:not(.mw-not-overflow-x)';
UsunieciePaskaOverflowXY(css,"height","top","bottom","x");
DodatkiSkrypt.Boksy.ScrollBarOverflow();/*Usunięcie klas pasków przewijania, jeżeli znikły*/
/**/
return Promise.resolve();
},null,muteks_boksy);
}
jQuery(document).DodatkiSkryptSettledPromise(function(){
DodatkiSkrypt.Boksy.NotOverflowXY();
});
/*Uruchamianie zdarzeń dla elementu spisu treści, innych niż obsługiwane przez StickyXY, używając funkcji NotOverflowXY*/
jQuery(document).DodatkiSkryptReady(function(){
/*Zdarzenia*/
function __FUNKCJA(i,element){
var sticky_xy=$(element).parents('.mw-sticky-x, .mw-sticky-y, .mw-optimal-x, .mw-optimal-y').parents('.mw-parent-node.strona_prawa, .mw-parent-node.strona_lewa, .mw-parent-node.strona_górna, .mw-parent-node.strona_dolna').parents('.strona_start');
if(sticky_xy.length!=0){return true;}
}
var css='#mw-content-text .mw-parser-output .mw-overflow-x.mw-not-overflow-x:not(.mw-not-overflow-y)';
DodatkiSkrypt.Zdarzenia.ZdarzeniaJavaScript(css,"hover",'NotOverflowXY','NotOverflowXY',DodatkiSkrypt.PodTablicaDodatkiSkrypt(true,'Boksy'),DodatkiSkrypt.PodTablicaDodatkiSkrypt(false,'Boksy'),null,__FUNKCJA);
var css='#mw-content-text .mw-parser-output .mw-overflow-y.mw-not-overflow-y:not(.mw-not-overflow-x)';
DodatkiSkrypt.Zdarzenia.ZdarzeniaJavaScript(css,"hover",'NotOverflowXY','NotOverflowXY',DodatkiSkrypt.PodTablicaDodatkiSkrypt(true,'Boksy'),DodatkiSkrypt.PodTablicaDodatkiSkrypt(false,'Boksy'),null,__FUNKCJA);
DodatkiSkrypt.Zdarzenia.ZdarzeniaJavaScript(window,"scroll",'NotOverflowXY',null,DodatkiSkrypt.PodTablicaDodatkiSkrypt(true,'Boksy'),DodatkiSkrypt.PodTablicaDodatkiSkrypt(false,'Boksy'),null,__FUNKCJA);
DodatkiSkrypt.Zdarzenia.ZdarzeniaJavaScript(window,"resize",'NotOverflowXY',null,DodatkiSkrypt.PodTablicaDodatkiSkrypt(true,'Boksy'),DodatkiSkrypt.PodTablicaDodatkiSkrypt(false,'Boksy'),null,__FUNKCJA);
});
/*Definicja dodatkowych funkcji, niż standardowe, w href w linkach rozwijanej tabeli TABLE lub ramki DIV, jeśli ona generuje zwiększenie rozmiarów, aby w rodzicu pojawił się pasek przewijania, z dodatkowymi opcjami generowanej przez arkusz stylów CSS*/
DodatkiSkrypt.Boksy.RamkiTableIDiv=function(obiekt,id_tabeli_lub_ramki,id_nazwa_a,fun_obiektu,tab_el){
$(obiekt).each(function(i,element_f){
var id=element_f.getAttribute("id")
i=i+((tab_el=="Table")?0:1);
if((id)&&(id==(id_tabeli_lub_ramki+i))){
var collapsebutton=$(element_f).find('a#'+id_nazwa_a+i);
if((collapsebutton!==null)&&(collapsebutton.length>0)){
$('#mw-content-text .mw-parser-output').find(element_f).find('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,"\\.").replace(/([\(\)])/g,"\\$1")+"\\s*\\(\\s*"+i+"\\s*\\)[\\s;\\)\\,]*";
var re_frame = new RegExp(col,'g');
var re_javascript=new RegExp("^[\\s;]*javascript:","g");
if((re_javascript.test(href))&&(re_frame.test(href))){
function DodajSkryptJavaScript(fun){
function Re(fun){
var re=new RegExp("javascript:"+fun.replace(/\./g,"\\.").replace(/([\(\)])/g,"\\$1")+"\\s*\\(\\s*\\)",'g');
return re;
}
var href_nowe=element_g.getAttribute('href');
var re=Re("DodatkiSkrypt."+fun);
if(re.test(href_nowe)){
element_g.setAttribute('href',href_nowe.replace(re,""));
href_nowe=element_g.getAttribute('href');
};
re=Re("window.UruchamiaczSkryptowyApi.DodatkiSkrypt().Boksy."+tab_el+"."+fun);
if(!re.test(href_nowe)){
element_g.setAttribute('href',href_nowe.replace(/[;\s]*$/g,"")+';javascript:window.UruchamiaczSkryptowyApi.DodatkiSkrypt().Boksy.'+tab_el+"."+fun+"()");
}
}
DodajSkryptJavaScript('OperacjeBoksy');
}
}
});
}
}
});
}
/*Koniec dodatkowych funkcji*/
DodatkiSkrypt.Boksy.Table=new Array();
DodatkiSkrypt.Boksy.Table.OperacjeBoksy=function(){
jQuery(document).DodatkiSkryptReady(function(){
DodatkiSkrypt.Boksy.ScrollBarOverflow();
DodatkiSkrypt.Boksy.StickyXY();
DodatkiSkrypt.Boksy.OptimalXY();
DodatkiSkrypt.Boksy.NotOverflowXY();
},null,zmienne.muteks_table_collapseTable);
}
DodatkiSkrypt.Boksy.Div=new Array();
DodatkiSkrypt.Boksy.Div.OperacjeBoksy=function(){
jQuery(document).DodatkiSkryptReady(function(){
DodatkiSkrypt.Boksy.ScrollBarOverflow();
DodatkiSkrypt.Boksy.StickyXY();
DodatkiSkrypt.Boksy.OptimalXY();
DodatkiSkrypt.Boksy.NotOverflowXY();
},null,zmienne.muteks_div_toggleNavigationBar);
}
/*Uruchamianie dodatkowych funkcji dla tabel TABLE i ramek DIV nawigacyjnych.*/
jQuery(document).DodatkiSkryptReady(function(){
/*Dla menu rozwijanego tabeli TABLE zdefiniowanej na stronie MediaWiki:DodatkiSkrypt.js*/
DodatkiSkrypt.Boksy.RamkiTableIDiv("table.collapsible",'collapsibleTable','collapseButton','window.UruchamiaczSkryptowyApi.DodatkiSkrypt().Nawigacja.collapseTable',"Table");
/**/
DodatkiSkrypt.Boksy.Table.OperacjeBoksy();
/**/
},null,zmienne.muteks_table);
/**/
jQuery(document).DodatkiSkryptReady(function(){
/*Dla menu rozwijanej ramki DIV zdefiniowanej na stronie MediaWiki:DodatkiSkrypt.js*/
DodatkiSkrypt.Boksy.RamkiTableIDiv("div.NavFrame",'NavFrame','NavToggle','window.UruchamiaczSkryptowyApi.DodatkiSkrypt().Nawigacja.toggleNavigationBar',"Div");
/**/
DodatkiSkrypt.Boksy.Div.OperacjeBoksy();
/**/
/*Koniec uruchamiania*/
},null,zmienne.muteks_div);
/*Uruchamianie dodatkowych zdarzeń*/
jQuery(document).DodatkiSkryptReady(function(){
/*Funkcje zdarzeń*/
DodatkiSkrypt.Zdarzenia.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("*.mw-sticky-x, *.mw-sticky-y",'StickyXY',true,DodatkiSkrypt.PodTablicaDodatkiSkrypt(true,'Boksy'),DodatkiSkrypt.PodTablicaDodatkiSkrypt(false,'Boksy'));
DodatkiSkrypt.Zdarzenia.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY('*.mw-optimal-x, *.mw-optimal-y','OptimalXY',true,DodatkiSkrypt.PodTablicaDodatkiSkrypt(true,'Boksy'),DodatkiSkrypt.PodTablicaDodatkiSkrypt(false,'Boksy'));
DodatkiSkrypt.Zdarzenia.ZdarzeniaJavaScriptDodatkoweFunkcyjneXY("body.skin-vector-search-vue .vector-sticky-header",'StickyXY',false,DodatkiSkrypt.PodTablicaDodatkiSkrypt(true,'Boksy'),DodatkiSkrypt.PodTablicaDodatkiSkrypt(false,'Boksy'));
});
/*Koniec uruchamiania dodatkowych zdarzeń*/