Wikipedysta:Persino/Gadget-DymkiSubst.js

Z Wikibooks, biblioteki wolnych podręczników.

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.
(function(mw,$){
var DymkiSubst=new Array();
/**/
var czy_nie_gconfig=false;
DymkiSubst.GadgetDymkiSubst=function(){
	/**/
	var dymkisubst_dymki_nad_linkami_inteligentnymi_na_stronach_niezbiorczych=undefined;
	var dymkisubst_dymki_nad_linkami_nieinteligentnymi_na_stronach_niezbiorczych=undefined;
	var dymkisubst_dymki_asynchroniczne_na_stronach_niezbiorczych=undefined;
	
	var dymkisubst_dymki_nad_linkami_inteligentnymi_na_stronach_zbiorczych=undefined;
	var dymkisubst_dymki_nad_linkami_nieinteligentnymi_na_stronach_zbiorczych=undefined;
	var dymkisubst_dymki_asynchroniczne_na_stronach_zbiorczych=undefined;
	
	if((window.gConfig!==undefined)&&(window.gConfig.register!==undefined)&&(window.gConfig.get!==undefined)){
		if(!czy_nie_gconfig){
			czy_nie_gconfig=true;
  			mw.messages.set({
				'DymkiSubst-name': 'Dymki nad linkami inteligentymi',
				'DymkiSubst-description-page': 'Wikibooks:StronicowyParser',
				'DymkiSubst-dymki_nad_linkami_inteligentnymi_na_stronach_niezbiorczych' : "Ustawia dymki, nad linkami, dla linków inteligentnych na stronach niezbiorczych.",
				'DymkiSubst-dymki_nad_linkami_nieinteligentnymi_na_stronach_niezbiorczych' : "Ustawia dymki, nad linkami, dla linków nieinteligentnych na stronach niezbiorczych.",
				'DymkiSubst-dymki_asynchroniczne_na_stronach_niezbiorczych' : "Ustawia dymki, nad linkami, asynchronicznie na stronach niezbiorczych.",
				'DymkiSubst-dymki_nad_linkami_inteligentnymi_na_stronach_zbiorczych' : "Ustawia dymki, nad linkami, dla linków inteligentnych na stronach zbiorczych.",
				'DymkiSubst-dymki_nad_linkami_nieinteligentnymi_na_stronach_zbiorczych' : "Ustawia dymki, nad linkami, dla linków nieinteligentnych na stronach zbiorczych.",
				'DymkiSubst-dymki_asynchroniczne_na_stronach_zbiorczych' : "Ustawia dymki, nad linkami, asynchronicznie na stronach zbiorczych.",
			});
			gConfig.register('DymkiSubst', {name: mw.msg('DymkiSubst-name'), descriptionPage: mw.msg('DymkiSubst-description-page')}, [
				{
					name: 'dymki_nad_linkami_inteligentnymi_na_stronach_niezbiorczych',
					desc: mw.msg('DymkiSubst-dymki_nad_linkami_inteligentnymi_na_stronach_niezbiorczych'),
					type: 'boolean',
					deflt: true,
					legacy: [window, 'wb_dymkisubst_dymki_nad_linkami_inteligentnymi_na_stronach_niezbiorczych']
				},
				{
					name: 'dymki_nad_linkami_nieinteligentnymi_na_stronach_niezbiorczych',
					desc: mw.msg('DymkiSubst-dymki_nad_linkami_nieinteligentnymi_na_stronach_niezbiorczych'),
					type: 'boolean',
					deflt: false,
					legacy: [window, 'wb_dymkisubst_dymki_nad_linkami_nieinteligentnymi_na_stronach_niezbiorczych']
				},			
				{
					name: 'dymki_asynchroniczne_na_stronach_niezbiorczych',
					desc: mw.msg('DymkiSubst-dymki_asynchroniczne_na_stronach_niezbiorczych'),
					type: 'boolean',
					deflt: false,
					legacy: [window, 'wb_dymkisubst_dymki_asynchroniczne_na_stronach_niezbiorczych']
				},
				{
					name: 'dymki_nad_linkami_inteligentnymi_na_stronach_zbiorczych',
					desc: mw.msg('DymkiSubst-dymki_nad_linkami_inteligentnymi_na_stronach_zbiorczych'),
					type: 'boolean',
					deflt: true,
					legacy: [window, 'wb_dymkisubst_dymki_nad_linkami_inteligentnymi_na_stronach_zbiorczych']
				},
				{
					name: 'dymki_nad_linkami_nieinteligentnymi_na_stronach_zbiorczych',
					desc: mw.msg('DymkiSubst-dymki_nad_linkami_nieinteligentnymi_na_stronach_zbiorczych'),
					type: 'boolean',
					deflt: false,
					legacy: [window, 'wb_dymkisubst_dymki_nad_linkami_nieinteligentnymi_na_stronach_zbiorczych']
				},
				{
					name: 'dymki_asynchroniczne_na_stronach_zbiorczych',
					desc: mw.msg('DymkiSubst-dymki_asynchroniczne_na_stronach_zbiorczych'),
					type: 'boolean',
					deflt: false,
					legacy: [window, 'wb_dymkisubst_dymki_asynchroniczne_na_stronach_zbiorczych']
				},
			]);
		}
		dymkisubst_dymki_nad_linkami_inteligentnymi_na_stronach_niezbiorczych = gConfig.get('DymkiSubst', 'dymki_nad_linkami_inteligentnymi_na_stronach_niezbiorczych');
		dymkisubst_dymki_nad_linkami_nieinteligentnymi_na_stronach_niezbiorczych = gConfig.get('DymkiSubst', 'dymki_nad_linkami_nieinteligentnymi_na_stronach_niezbiorczych');
		dymkisubst_dymki_asynchroniczne_na_stronach_niezbiorczych = gConfig.get('DymkiSubst', 'dymki_asynchroniczne_na_stronach_niezbiorczych');
		
		dymkisubst_dymki_nad_linkami_inteligentnymi_na_stronach_zbiorczych = gConfig.get('DymkiSubst', 'dymki_nad_linkami_inteligentnymi_na_stronach_zbiorczych');
		dymkisubst_dymki_nad_linkami_nieinteligentnymi_na_stronach_zbiorczych = gConfig.get('DymkiSubst', 'dymki_nad_linkami_nieinteligentnymi_na_stronach_zbiorczych');
		dymkisubst_dymki_asynchroniczne_na_stronach_zbiorczych = gConfig.get('DymkiSubst', 'dymki_asynchroniczne_na_stronach_niezbiorczych');
	}
	dymkisubst_dymki_nad_linkami_inteligentnymi_na_stronach_niezbiorczych=((dymkisubst_dymki_nad_linkami_inteligentnymi_na_stronach_niezbiorczych!==undefined)?dymkisubst_dymki_nad_linkami_inteligentnymi_na_stronach_niezbiorczych:true);
	dymkisubst_dymki_nad_linkami_nieinteligentnymi_na_stronach_niezbiorczych=((dymkisubst_dymki_nad_linkami_nieinteligentnymi_na_stronach_niezbiorczych!==undefined)?dymkisubst_dymki_nad_linkami_nieinteligentnymi_na_stronach_niezbiorczych:false);
	dymkisubst_dymki_asynchroniczne_na_stronach_niezbiorczych=((dymkisubst_dymki_asynchroniczne_na_stronach_niezbiorczych!==undefined)?dymkisubst_dymki_asynchroniczne_na_stronach_niezbiorczych:false);
	
	dymkisubst_dymki_nad_linkami_inteligentnymi_na_stronach_zbiorczych=((dymkisubst_dymki_nad_linkami_inteligentnymi_na_stronach_zbiorczych!==undefined)?dymkisubst_dymki_nad_linkami_inteligentnymi_na_stronach_zbiorczych:true);
	dymkisubst_dymki_nad_linkami_nieinteligentnymi_na_stronach_zbiorczych=((dymkisubst_dymki_nad_linkami_nieinteligentnymi_na_stronach_zbiorczych!==undefined)?dymkisubst_dymki_nad_linkami_nieinteligentnymi_na_stronach_zbiorczych:false);
	dymkisubst_dymki_asynchroniczne_na_stronach_zbiorczych=((dymkisubst_dymki_asynchroniczne_na_stronach_zbiorczych!==undefined)?dymkisubst_dymki_asynchroniczne_na_stronach_zbiorczych:false);
	
	var promise_dymki;
	this.UstalanieZmiennychTworzeniaDymkowego=function(aktualna_strona){
		return DodatkiSkrypt.Scribunto.StronicowyParser.CzyStronaSubst(aktualna_strona).DodatkiSkryptThen(function(wikikod){
			if(wikikod){
				var dymkisubst_dymki_nad_linkami_inteligentnymi=dymkisubst_dymki_nad_linkami_inteligentnymi_na_stronach_zbiorczych;
				var dymkisubst_dymki_nad_linkami_nieinteligentnymi=dymkisubst_dymki_nad_linkami_nieinteligentnymi_na_stronach_zbiorczych;
				var dymkisubst_dymki_asynchroniczne=dymkisubst_dymki_asynchroniczne_na_stronach_zbiorczych;
			}else{
				var dymkisubst_dymki_nad_linkami_inteligentnymi=dymkisubst_dymki_nad_linkami_inteligentnymi_na_stronach_niezbiorczych;
				var dymkisubst_dymki_nad_linkami_nieinteligentnymi=dymkisubst_dymki_nad_linkami_nieinteligentnymi_na_stronach_niezbiorczych;
				var dymkisubst_dymki_asynchroniczne=dymkisubst_dymki_asynchroniczne_na_stronach_niezbiorczych;
			}
			return Promise.resolve([dymkisubst_dymki_nad_linkami_inteligentnymi,dymkisubst_dymki_nad_linkami_nieinteligentnymi,dymkisubst_dymki_asynchroniczne]);
		});
	};
	promise_dymki=this.UstalanieZmiennychTworzeniaDymkowego();
	var zmienna_this=this;  
	//var tab_promise=new Array();
	//this.CzekanieNaZwolnienieWszystkichKorutynWTabeliObietnicDymkiSubst=function(){
	//	return DodatkiSkrypt.CzekanieNaZwolnienieWszystkichKorutynWTabeliObietnic(tab_promise);
	//}
	var dymki_muteks=new DodatkiSkrypt.Muteks();
	var dymki_projektowe_muteks=new DodatkiSkrypt.Muteks();
	this.lineHeight=function(id){
		var lineheight=window.getComputedStyle(id, null).getPropertyValue("line-height");
		if(lineheight=="normal"){
			var fontSize=window.getComputedStyle(id, null).getPropertyValue("font-size");
			var liczba=parseFloat(fontSize);
			return liczba*1.2;
		}
		var re=/^[0-9]*\.?[0-9]*$/;
		var test=re.test(lineheight);
		if(test){
			var lineheight_float=parseFloat(lineheight);
			var fontSize=window.getComputedStyle(id, null).getPropertyValue("font-size");
			fontSize=parseFloat(fontSize);
			return lineheight_float*fontSize;
		}
		re=/^[0-9]*\.?[0-9]*[a-zA-Z]+$/;
		test=re.test(lineheight);
		if(test){
			var liczba=parseFloat(lineheight.match(/[0-9]*\.?[0-9]*/).toString());	
        	var jed=lineheight.match(/[a-zA-Z]+$/).toString();
        	if(jed=="cm"){return liczba*96/2.54;}
        	if(jed=="mm"){return liczba*96/25.4;}
        	if(jed=="Q"){return liczba/25.4*96/4;}
        	if(jed=="in"){return liczba*96;}
        	if(jed=="pt"){return liczba*4/3;}
        	if(jed=="pc"){return liczba*16;}
        	if(jed=="px"){return liczba;}
        	return null;
		}
		return null;
	}
	/*Funkcja do wyświetlania komunikatów do [[Szablon:Link wewnętrzny]]*/
    this.WyswietlKomunikatInfoKombajn=function(id,event,komunikat){
		var body=document.querySelector('body');
		if(body==null){return;}
		var bodycontent = document.querySelector('#bodyContent');
		if(bodycontent==null){return;}
		this.UsunKomunikatInfo();
		var div=document.createElement('div');
		div.position="absolute";
		var element_id=id.getBoundingClientRect();
		var left_real=event.clientX+window.scrollX-30;
		var top_real=element_id.top+window.scrollY;
    	var wysokosclinii=this.lineHeight(id);
		if((wysokosclinii==null)||(wysokosclinii<=0)){return;};
		var eY=event.clientY;
		for (var i=0;;++i){
			var top_real_dolny=top_real+(id.offsetHeight-i*wysokosclinii);
			var top_real_gorny=top_real+(id.offsetHeight-(i+1)*wysokosclinii);
			if((top_real_dolny<0)||(top_real_gorny<0)){break;}
	    	if((eY<=top_real_dolny)&&(eY>top_real_gorny)){
	    		top_real=top_real_gorny;
	    		break;
	    	}
	    	if(top_real_gorny<=top_real){
	    		top_real=top_real_gorny;
	    		break;
	    	}
		}
		div.style.left=(parseInt(left_real)).toString()+'px';

    	div.classList.add("dymkisubst_link_wewnętrzny_komunikatów");
		div.setAttribute("id","dymkisubst_id_animacja_komunikatów");
		div.innerHTML=komunikat;
		var div_element=body.appendChild(div);
		
		var top=parseInt(top_real-div_element.offsetHeight);
		if(top<0){top=0;}
    	div.style.top=top.toString()+'px';
		
		var rectbodycontent=bodycontent.getBoundingClientRect();
		var leftbodycontent=rectbodycontent.left+window.scrollX;
		var widthbodycontent=bodycontent.offsetWidth;
		var id_komunikat_right=left_real+div_element.offsetWidth;
		var marginesRight=1;
		if(widthbodycontent+leftbodycontent<id_komunikat_right+marginesRight){
	    	 var roznica_offsetow=id_komunikat_right-widthbodycontent-leftbodycontent;
	  		 div_element.style.left=(parseInt(left_real-(roznica_offsetow)-marginesRight)).toString()+'px';	
		}
		var div_element_rect=div_element.getBoundingClientRect();
		var left_real_id=event.clientX+window.scrollX;
		var left_real_div=div_element_rect.left+window.scrollX;
		var roz_left=left_real_id-left_real_div;
		var div_el=document.createElement('div');
		div_el.setAttribute('class',"dymkisubst_link_wewnętrzny_komunikatów_wskaźnik");
		var div_el_dod=div_element.appendChild(div_el);
		$(div_el_dod).css('left',(roz_left-9)+'px');
		//if((DymkiSubst.szablony)&&(DymkiSubst.szablony.LadujSzablon)){
		//	var tab_promise=new Array(true);
		//	DymkiSubst.szablony.LadujSzablon(div_element,null,null,tab_promise).then((result) => {}).catch((error) => {});
		//}
	}
	this.UsunKomunikatInfo=function(id){
    	var body=document.querySelector('body');
		if(body==null){return;}
		var id_animation=document.getElementById('dymkisubst_id_animacja_komunikatów');
		if(id_animation!==null){
			body.removeChild(id_animation);
			if(id){id.dymkisubst_poprawnie=true;}
		}else{
			var link_wewnetrzny_komunikatow=document.getElementsByClassName('dymkisubst_link_wewnętrzny_komunikatów');
			if((link_wewnetrzny_komunikatow!==null)&&(link_wewnetrzny_komunikatow.length>0)){
				var tab_komunikat=new Array();
				for(var s=0;s<link_wewnetrzny_komunikatow.length;++s){tab_komunikat[s]=link_wewnetrzny_komunikatow[s];}
				for(var s=0;s<tab_komunikat.length;++s){
					body.removeChild(tab_komunikat[s]);
				}
				if(id){id.dymkisubst_poprawnie=true;}
			}else{
				if(id){id.dymkisubst_poprawnie=false;}
			}
		}
	}
	this.PobierzKodElementuRodzicaA=function(element_a){
		var parent_element_a=element_a.parentNode;
		if((parent_element_a.tagName.toUpperCase()!="SPAN")||(!$(parent_element_a).hasClass("link"))){return null;}
	 
		var element_link=parent_element_a.classList;
  		if((element_link!==null)&&(element_link.length>0)){
  	 		for(var a=0;a<element_link.length;++a){
  	 			var kod=element_link[a];
  	 			if(kod!="link"){
					return kod;
  	 			}
  	 		}
  		}
  		return null;
	}
	this.WyswietlKomunikatInfo=function(id,event){
		var tab_promise=new Array();
		id.dymkisubst_poprawnie=true;
		function Komunikat(id,event,tekst_komunikat){
			if(!id.dymkisubst_poprawnie){
				zmienna_this.UsunKomunikatInfo();
				return;
			}
			var div=document.createElement('div');
			div.innerHTML=tekst_komunikat;
			function P(element){
				var tekst_komunikat=element.innerHTML;
				var czy_tekst_komunikat=tekst_komunikat.match(/^\s*<p\s*>/g,"")
				if(!czy_tekst_komunikat){	
					czy_tekst_komunikat=tekst_komunikat.match(/^\s*<p\s+[^<>]*>/g,"")
				}
				if(czy_tekst_komunikat){
					var p=div.getElementsByTagName('p');
					if((p!==null)&&(p.length>0)){
						p[0].style.marginTop="0";
					}
				}
				czy_tekst_komunikat=tekst_komunikat.match(/<\/p>\s*$/g)
				if(czy_tekst_komunikat){
					var p=div.getElementsByTagName('p');
					if((p!==null)&&(p.length>0)){
						p[p.length-1].style.marginBottom="0";
					}
				}
			}
			
			P(div);
			tekst_komunikat=div.innerHTML;
			
        	zmienna_this.WyswietlKomunikatInfoKombajn(id,event,tekst_komunikat);
		}
		this.UsunKomunikatInfo();
		var kod=this.PobierzKodElementuRodzicaA(id);
		if(kod===null){return;}
	
		var old_href=id.getAttribute('old_href');
		var href=id.getAttribute('href');
	
		if(href===null){
			href="";
		}else{
			href=DodatkiSkrypt.Szereg.Kodowanie.DecodeHtml(href);
			href=DodatkiSkrypt.Szereg.Styl.SpecjalneKodyWiki(href);
		}
		if(old_href){
			old_href=DodatkiSkrypt.Szereg.Kodowanie.DecodeHtml(old_href);
			old_href=DodatkiSkrypt.Szereg.Styl.SpecjalneKodyWiki(old_href);
		}
		
		var strona=DodatkiSkrypt.Info.page.fullname;
		var wikikod=((old_href!==null)?('{{#invoke:Brudnopis/Persino/Dymki|UzyskajOpisOdParametrówLinku|'+kod+'|'+href+'|'+old_href+'}}'):('{{#invoke:Brudnopis/Persino/Dymki|UzyskajOpisOdParametrówLinku|'+kod+'|'+href+'}}'));
		var promise=DodatkiSkrypt.api.ZadaniaApi({
			action: 'parse',
			format: 'json',
			prop: 'text',
			title: strona,
			text: wikikod,
			disabletoc: true,
			disablelimitreport: true,
			disablestylededuplication: true,
			contentmodel: 'wikitext',
		},null,true).DodatkiSkryptThen(function(data){
            var tekst_komunikat=data.parse.text['*'];
            Komunikat(id,event,tekst_komunikat);
		}).DodatkiSkryptCatch((error) => {});
		return promise;
	}
	this.UstawZdarzeniaKomunikatuInfo=function(rodzic,__muteks,aktualna_strona){
		return $(document).DodatkiSkryptReady(function(){
			var promise_dymki_aktualna=promise_dymki;
			if(aktualna_strona){
				promise_dymki=zmienna_this.UstalanieZmiennychTworzeniaDymkowego(aktualna_strona);
			}
			return promise_dymki.DodatkiSkryptThen(function(data){
				var dymkisubst_dymki_nad_linkami_inteligentnymi=data[0];var dymkisubst_dymki_nad_linkami_nieinteligentnymi=data[1];var dymkisubst_dymki_asynchroniczne=data[2];
				if(!dymkisubst_dymki_nad_linkami_inteligentnymi){return;}
  				var klasa_link_wewnetrzny=$(rodzic).find('.link');
  				for(var s=0;s<klasa_link_wewnetrzny.length;++s){
  					var poszczegolna_klasa=klasa_link_wewnetrzny[s];
  					if(poszczegolna_klasa.tagName.toUpperCase()=="SPAN"){
  						zmienna_this.UstawZdarzeniaKomunikatuElementuInfo(poszczegolna_klasa);
  					}
  				}
			}).DodatkiSkryptFinally(function(){
				promise_dymki=promise_dymki_aktualna;
			});
		},null,__muteks||dymki_projektowe_muteks);
	}
	this.UstawZdarzeniaKomunikatuElementuInfo=function(poszczegolna_klasa){
  		var element_link=poszczegolna_klasa.classList;
  		if((element_link!==null)&&(element_link.length>0)){
  	 		for(var a=0;a<element_link.length;++a){
  	 			var kod=element_link[a];
  	 			if(kod!="link"){
  	 				var a_tag=poszczegolna_klasa.querySelector('a');
					if(a_tag!==null){
						$(a_tag).on("mouseover",function(){
							var __this=this;
							var __event=event;
							var promise=$(document).DodatkiSkryptReady(function(){
								return DymkiSubst.gadgetdymkisubst.WyswietlKomunikatInfo(__this,__event);
							},null,dymki_muteks);
						});
						$(a_tag).on("mouseout",function(){
							var __this=this;
							var promise=$(document).DodatkiSkryptReady(function(){
								return DymkiSubst.gadgetdymkisubst.UsunKomunikatInfo(__this);
							},null,dymki_muteks);
						});
						break;
					}
  	 			}
  	 		}
  		}
	}
    this.UstawTagiIKlasyKomunikatuInfo=function(rodzic,__muteks,aktualna_strona){
    	return $(document).DodatkiSkryptReady(function(){
    		var promise_dymki_aktualna=promise_dymki;
			if(aktualna_strona){
				promise_dymki=zmienna_this.UstalanieZmiennychTworzeniaDymkowego(aktualna_strona);
			}
    		return promise_dymki.DodatkiSkryptThen(function(data){
    			var dymkisubst_dymki_nad_linkami_inteligentnymi=data[0];var dymkisubst_dymki_nad_linkami_nieinteligentnymi=data[1];var dymkisubst_dymki_asynchroniczne=data[2];
				if(!dymkisubst_dymki_nad_linkami_nieinteligentnymi){return;}
				var tab_promise=new Array();
    
    			function CzyNieRysunek(element){
    				if((!$(element).hasClass('mw-file-description'))&&($(element).parents('figure, gallery').first().length==0)){return true;};
    				return false;
    			}
    			function NieLinkiReferencji(element){
    				if($(element).parent().hasClass('reference')){return false;};
    				return true;
    			}
    			function Czy_w_toc(element){
	 				var toc=new Array("toc","toc_spis","toc_wykaz");
	 				for(var a=0;a<toc.length;++a){
	 					var toc_pos=$(rodzic).find("."+toc[a]);
	 					if((toc_pos!==null)&&(toc_pos.length>0)){
	 						for(var b=0;b<toc_pos.length;++b){
	 							var element_toc=toc_pos[b];
		 						var el=$(element_toc).find(element)
		 						if((el!==null)&&(el.length>0)){
	 								return false;
	 							}
	 						}
		 				}
		 			}
	 				return true;
				}
				function TableMenu(element){
	 				var tablemenu=$(rodzic).find("table.tablemenu");
	 				if((tablemenu!==null)&&(tablemenu.length>0)){
	 					for(var s=0;s<tablemenu.length;++s){
	 						var el=$(tablemenu[s]).find(element);
		 		    		if((el!==null)&&(el.length>0)){
		 		    			return false;
	 			    		}
	 					}
		 			}
		 			return true;
				}
				function NaglowekDokumentacji(element){
		 			var dokumentacja=$(rodzic).find(".template-documentation #doc_editlinks, #documentation-meta-data");
	 				if((dokumentacja!==null)&&(dokumentacja.length>0)){
	 					for(var s=0;s<dokumentacja.length;++s){
	 						var el=$(dokumentacja[s]).find(element);
	 						if((el!==null)&&(el.length>0)){
	 		    				return false;
	 		    			}
	 					}
	 				}
	 				return true;
				}
				function CategoryTree(element){
					var a_element=$(rodzic).find('.CategoryTreeTag').find(element);
					if((a_element!==null)&&(a_element.length>0)){
						return false;
					}
					return true;
				}
				function TrybCiemny(element){
					var elem1=$(rodzic).find('.uruchom_tryb_ciemny').find(element);
					var elem2=$(rodzic).find('.uruchom_tryb_jasny').find(element);
					if(((elem1!==null)&&(elem1.length>0))||((elem2!==null)&&(elem2.length>0))){
						return false;
					}
					return true;
				}
				function BezSzablonSubst(element){
					var element_tag=$(rodzic).find('.rodzic_szablon_subst_js, .szablon_subst_js').find(element);
					if((element_tag!==null)&&(element_tag.length>0)){return false;}
					return true;
				}
				function Thumb(element){
					var thumb=$(rodzic).find('.thumb').find(element);
					if((thumb!==null)&&(thumb.length>0)){
						var caption=$(rodzic).find('.thumb .thumbcaption').find(element);
						if((caption===null)||(caption.length==0)){
							return false;
						}
					}
					return true;
				}
				function Audio(element){
					var thumb=$(rodzic).find('.audio').find(element);
					if((thumb!==null)&&(thumb.length>0)){
						return false;
					}
					return true;
				}
			
	  			var elementy_a=$(rodzic).find('a');
  				var tab_outer_a=new Array();
  				if((elementy_a!==null)&&(elementy_a.length>0)){
  					for(var a=0;a<elementy_a.length;++a){
  						var element_a=elementy_a[a];
	  					var href=element_a.getAttribute('old_href')||element_a.getAttribute('href');
	  					if((((href!==null)&&(href!=""))||(($(element_a).hasClass('selflink'))&&($(element_a).hasClass('mw-selflink'))))&&(href!="#")&&(element_a.innerHTML!="")&&(!$	(element_a).hasClass('image'))){
		  					if(!((href)&&(href.match(/^javascript:/g)))){
  								var linenos=$(element_a).find("span.linenos");
  								var tak=(((linenos===null)||(linenos.length==0))
  											&&(CzyNieRysunek(element_a))
  												&&(NieLinkiReferencji(element_a))
  													&&(Thumb(element_a))
  														&&(Audio(element_a))
  						    								&&(NaglowekDokumentacji(element_a))
  						    									&&(Czy_w_toc(element_a))
  						        									&&(TableMenu(element_a))
  						        										&&(CategoryTree(element_a))
  						            										&&(TrybCiemny(element_a))
  						            											&&(BezSzablonSubst(element_a))
  						            		);
	  							if(tak){
  									var parent_a=$(element_a).parent().first();
  	 								if((parent_a.length>0)&&(parent_a[0].tagName.toUpperCase()=="SPAN")){
  	 									if($(parent_a).hasClass("link")){
  	 										tak=false;
  	 									}else{
  	 										tak=true;
  	 									}
	  	 							}else{
  		 								tak=true;
  	 								}
  								}
  	 							if(!tak){
									//tab_outer_a.push(element_a);
									continue;
  	 							}
	  						}else{
  								continue;
  							}
  						}
  						(function(element_a){
  	 						//var element_a=tab_outer_a[a];
  	 		
  	 						function LinkURL(wynik_link_wewnetrzny,numer_wywolania,element_a){
  	 	    					//var element_outer_a=tab_outer_a[numer_wywolania];
	  	 	    				var poszczegolna_klasa=$(element_a).wrap(function() {
									return "<span class='"+wynik_link_wewnetrzny+" link'></span>";
								});
								var element_span_a=poszczegolna_klasa.parent().first();
								if((element_span_a!==null)&&(element_span_a.length>0)){
									zmienna_this.UstawZdarzeniaKomunikatuElementuInfo(element_span_a[0]);
								}
  	 						}
  	 						var strona_href=element_a.getAttribute('old_href')||element_a.getAttribute('href');
  	 						strona_href=(((strona_href)&&(strona_href!=""))?strona_href:"")
        					if(strona_href!==""){
  	 							strona_href=strona_href.replace(/[_\s]+/g,"_");
  	 							strona_href=DodatkiSkrypt.Szereg.Styl.SpecjalneKodyWiki(strona_href);
  	 							var strona=mw.config.get('wgPageName');
  	 			
								var promise=DodatkiSkrypt.api.ZadaniaApi({
									action: 'parse',
									format: 'json',
									prop: 'text',
									title: strona,
									text: "{{#invoke:Linki|UzyskajKodWikiLinku|strona="+strona_href+"|wyspecjalizowana=tak}}",
				    				disabletoc: true,
									disablelimitreport: true,
									disablestylededuplication: true,
									contentmodel: 'wikitext',
								},null,true,a).DodatkiSkryptThen(function(data){
            						var wynik_linkURL=data.parse.text['*'];
            						var numer=data.parse.text.number;
            						LinkURL(wynik_linkURL,numer,element_a);
								}).DodatkiSkryptCatch((error) => {});
								tab_promise.push(promise);
        					}
  						})(element_a);
        			}
  				}
  				return Promise.all(tab_promise);
    		}).DodatkiSkryptFinally(function(){
				promise_dymki=promise_dymki_aktualna;
			});
    	},null,__muteks||dymki_projektowe_muteks);
	}
}
var promise=new Promise(function(resolve,reject){
	function Czekaj(){
		if(window.DodatkiSkrypt){
			resolve(window.DodatkiSkrypt);
		}else{
			setTimeout(Czekaj,0);
		}
	}	
	Czekaj();
});
promise.then(function(DodatkiSkrypt){
	return DodatkiSkrypt.Szereg.Zmienne["CzekajNaZbiórZmiennych"](window,new Array("gConfig")).DodatkiSkryptThen(function(){
		DymkiSubst.gadgetdymkisubst=new DymkiSubst.GadgetDymkiSubst();
		return DodatkiSkrypt.Szereg.Zmienne["CzekajNaZbiórZmiennych"](DodatkiSkrypt.Info,new Array("page")).DodatkiSkryptThen(function(){
			return DodatkiSkrypt.Scribunto.StronicowyParser.CzyStronaSubst().DodatkiSkryptThen(function(wikikod){
				if(!wikikod){
					var parser_output=$("#mw-content-text .mw-parser-output");
					var tab_promise=new Array();
					var muteks=new DodatkiSkrypt.Muteks();
					tab_promise.push(DymkiSubst.gadgetdymkisubst.UstawZdarzeniaKomunikatuInfo(parser_output,muteks));
					tab_promise.push(DymkiSubst.gadgetdymkisubst.UstawTagiIKlasyKomunikatuInfo(parser_output,muteks));
					return Promise.all(tab_promise);
				}
			});
		});
	});
});
window.DymkiSubst=DymkiSubst;
/**/
})(mediaWiki,jQuery);