Informator

Dodatkowe informację o zgłoszeniach w panelu naruszeń portalu Wykop.pl.

当前为 2016-08-21 提交的版本,查看 最新版本

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name        	Informator
// @namespace   	http://www.wykop.pl/ludzie/Deykun
// @description 	Dodatkowe informację o zgłoszeniach w panelu naruszeń portalu Wykop.pl.
// @author      	Deykun
// @icon        	http://x3.cdn03.imgwykop.pl/c3201142/comment_bWVFKhjLOfg5B1xNe08BMxJTQF4qMS8V.gif
// @include	    	htt*wykop.pl/naruszenia/*
// @version     	3.00e
// @grant       	none
// @run-at			document-end
//
// Inspiracje:
// Kod dodawania paneli i inspirowany Sprawdzatorem Dreszczyka.
// Kod zapisywania danych inspirowany Automatycznym trybem nocnym Kamdza.
// Kod pobierania danych z tabeli dzięki uprzejmości Wicepsa (dzięki niemu są statystyki).
//
// ==/UserScript==

var main = function () {
$(document).ready(function($) {
	var wersjainformatora = '3.00d';
	console.log('Informator '+wersjainformatora);

	// - - - USTAWIENIA UKRYTE INFORMATORA! - - -
	// Zmieniając wartości niżej wpływasz na zachowanie informatora np. zwiększając wykresy

	var infroz = [100,100,75] 	//Rozmiar wykresu w 1. "Moderatorzy", 2. "Powody" (ogólnie), 3. "Powody" (dla moderatorów)

	// - - - UWAGA! - - -
	//Ustawienie zamiast "1" w if() poniżej wartości "1410" sprawi, że funkcja usunie wszystkie dane i zablokuje ich zapis. Inna liczba odblokowywuje zapis, ale NIE przywraca danych!

	// - - - KONIEC! - - -
	//Usuwa wszystko z bazy danych
		if(1410==1){
			localStorage.removeItem('informator.lo-p');
			localStorage.removeItem('informator.lo-n');
			localStorage.removeItem('informator.lo-k');
			localStorage.removeItem('informator.lo-z');
			var n = 0;
			while (n < 50){
				localStorage.removeItem('informator.lm-m('+n+')');
				localStorage.removeItem('informator.lm-m('+n+')-p');
				localStorage.removeItem('informator.lm-m('+n+')-k');
				localStorage.removeItem('informator.lm-m('+n+')-z');
				localStorage.removeItem('informator.lm-m('+n+')-n');
				localStorage.removeItem('informator.los-t('+n+')');
				localStorage.removeItem('informator.lds-t('+n+')');
				localStorage.removeItem('informator.lp-p('+n+')');
				localStorage.removeItem('informator.lp-p('+n+')-p');
				localStorage.removeItem('informator.lp-p('+n+')-k');
				localStorage.removeItem('informator.lp-p('+n+')-z');
				localStorage.removeItem('informator.lp-p('+n+')-n');
				var m = 0;
				while (m < 50){;
				localStorage.removeItem('informator.lm-m('+m+')-p('+n+')-p');
				localStorage.removeItem('informator.lm-m('+m+')-p('+n+')-k');
				localStorage.removeItem('informator.lm-m('+m+')-p('+n+')-z');
				localStorage.removeItem('informator.lm-m('+m+')-p('+n+')-n');
			m++;}n++;}}

	//Ustawienia użytkownika informatora
    var inf1 = (localStorage.getItem('informator.lo-o(0)') || 'off') == 'on' ? true : false; //wyświetlanie %
	var inf2 = (localStorage.getItem('informator.lo-o(1)') || 'off') == 'on' ? true : false; //usunięcie miniatur z panelu zgloszen
	var inf3 = (localStorage.getItem('informator.lo-o(2)') || 'off') == 'on' ? true : false; //pokazywanie zmian

	//Ikony: logo, ziel, czer, nieb, wysokoscikon, wkonsultacji, rozpatrywane, zmiennionypowod
	var inicon = ['http://c3201142.cdn03.imgwykop.pl/comment_ULVNdabLvaJFoNIncxLt069s2daYNTVy.jpg','http://x3.cdn03.imgwykop.pl/c3201142/comment_5eixN9eGMufLkUKuG7X9CLC5B8SlHw3L.jpg','http://x3.cdn03.imgwykop.pl/c3201142/comment_16bHpsLrZcg2o3XKKVjJWkDDrm7PvTgb.jpg', 'http://x3.cdn03.imgwykop.pl/c3201142/comment_VuHg9H4rP8mpFBpC9uiIMU8FpgIFImsT.jpg', 10,'http://x3.cdn03.imgwykop.pl/c3201142/comment_vTAv7o8elf48N7KkZpbCsSbJU87QdutO.jpg', 'http://x3.cdn03.imgwykop.pl/c3201142/comment_wzfYDXtrxmSK6p4jtK5niLHOwe3rmYRQ.jpg', 'http://x3.cdn03.imgwykop.pl/c3201142/comment_dd29TDLMeRBSSnVBZLBQwi19gEcFNtls.jpg']
	if (document.location.pathname.match('/naruszenia/moje')){
		//Ukrywanie miniatury
		if (inf2 == true){$('div[class="media-content m-reset-float"]').remove();}

		//Strona z naruszeniami
			var lm = []		//lm - lista moderatorów,
			var lp = []		//lp - lista powodów
			var los = []	//los - lista ostatnio sprawdzonych (zgłoszeń)
			var tos = []	//tos - tabela ostatnio sprawdzonych (zgłoszeń) - to co zostanie zapisane
			var lds = []	//lds - lista do sprawdzenia (ponownego)
			var tds = []	//tos - tabela do sprawdzenia (ponownego) - to co zostanie zapisane
			var zm = []		//zm - moderator sprawdzanego zgłoszenia
			var	zo = []		//zo - ocena sprawdzanego zgłoszenia
			var	zp = []		//zp - powód sprawdzanego zgłoszenia
			var	zt = []		//zt - tag sprawdzanego zgłoszenia

			//Pobranie wspomnianych list
			var l = '';	var m = 0;	var p = 0;	var n = 0;
			while (m < 4){	if (m==0){l='lm-m(';}	if (m==1){l='lp-p(';}	if (m==2){l='los-t(';}	if (m==3){l='lds-t(';}
				p = 0;	n = 0;	while (n < 50){
				p = localStorage.getItem('informator.'+l+n+')') || 0;
				if (p != 0){	if (l=='lm-m('){lm[n]=p;}	if (l=='lp-p('){lp[n]=p;}	if (l=='los-t('){los[n]=p;}	if (l=='lds-t('){lds[n]=p}	n++;}
				else {n=51;}} m++;}

			if (lp != 0) {console.log('Powody: '+lp);}
			if (lm != 0) {console.log('Moderatorzy: '+lm);}
			if (los != 0){console.log('Sprawdzone: '+los);}
			if (lds != 0){console.log('Do sprawdzenia: '+lds);}

			//Liczenie zgłoszeń
			var popr = 0;	var niep = 0;	var ocze = 0;	var kons = 0;	var zmie = 0;	var rozp = 0;	var q = 0; var dpopr = 0; var dniep = 0; var dzmie = 0; var dkons = 0; var docze = 0;
			n = 0;	while (n < 50){
				zm[n] = $(this).find('#violationsList > tbody > tr:eq('+n+') > td:eq(3) > span').text().substr(-4,4);		//zm - moderator zgłoszenia
				zm[n] = zm[n].replace(" ", "");
				zo[n] = $(this).find('#violationsList > tbody > tr:eq('+n+') > td:eq(3) > strong').text();					//zo - ocena zgłoszenia
				zp[n] = $(this).find('#violationsList > tbody > tr:eq('+n+') > td:eq(2) > p > span').text();				//zp - powód zgłoszenia
				zt[n] = $(this).find('#violationsList > tbody > tr:eq('+n+') > td:eq(2) > p').text().substr(0,5);			//zt - tag zgłoszenia
				zt[n] = zt[n].replace(":", "");
				console.log('_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _');
				if (zm[n]!='' && zo[n] != ''){	console.log('Zgłoszenie '+(n+1)+' #'+zt[n]+' rozpatrzył moderator '+zm[n]+' jako "'+zo[n]+'".');}
				if (lp.indexOf(zp[n]) == -1 && zp[n] != ''){
					console.log('Powód "'+zp[n]+'" został zarejestrowany po raz pierwszy.')
					localStorage.setItem('informator.lp-p('+lp.length+')', zp[n]);
					lp[lp.length]=zp[n];}
				if (lm.indexOf(zm[n]) == -1 && zm[n] != ''){
					console.log('Kod moderatora '+zm[n]+' został zarejestrowany po raz pierwszy.')
					localStorage.setItem('informator.lm-m('+lm.length+')', zm[n]);
					lm[lm.length]=zm[n];}
				if (los.indexOf(zt[n]) == -1){
					if (zo[n] == "Prawidłowe") {popr++;				tos[tos.length]=zt[n];		dpopr++;
							p = localStorage.getItem('informator.lo-p') || 0;	p++;
							localStorage.setItem('informator.lo-p', p);
							p = localStorage.getItem('informator.lp-p('+lp.indexOf(zp[n])+')-p') || 0;	p++;
							localStorage.setItem('informator.lp-p('+lp.indexOf(zp[n])+')-p', p);
							p = localStorage.getItem('informator.lm-m('+lm.indexOf(zm[n])+')-p') || 0;	p++;
							localStorage.setItem('informator.lm-m('+lm.indexOf(zm[n])+')-p', p);
							p = localStorage.getItem('informator.lm-m('+lm.indexOf(zm[n])+')-p('+lp.indexOf(zp[n])+')-p') || 0;	p++;
							localStorage.setItem('informator.lm-m('+lm.indexOf(zm[n])+')-p('+lp.indexOf(zp[n])+')-p', p);}
					else if (zo[n] == "Nieprawidłowe") {niep++;		tos[tos.length]=zt[n];		dniep++;
							p = localStorage.getItem('informator.lo-n') || 0;	p++;
							localStorage.setItem('informator.lo-n', p);
							p = localStorage.getItem('informator.lp-p('+lp.indexOf(zp[n])+')-n') || 0;	p++;
							localStorage.setItem('informator.lp-p('+lp.indexOf(zp[n])+')-n', p);
							p = localStorage.getItem('informator.lm-m('+lm.indexOf(zm[n])+')-n') || 0;	p++;
							localStorage.setItem('informator.lm-m('+lm.indexOf(zm[n])+')-n', p);
							p = localStorage.getItem('informator.lm-m('+lm.indexOf(zm[n])+')-p('+lp.indexOf(zp[n])+')-n') || 0;	p++;
							localStorage.setItem('informator.lm-m('+lm.indexOf(zm[n])+')-p('+lp.indexOf(zp[n])+')-n', p);}
					else if (zo[n] == "Zmieniony powód") {zmie++;	tos[tos.length]=zt[n];		dzmie++;
							p = localStorage.getItem('informator.lo-z') || 0;	p++;
							localStorage.setItem('informator.lo-z', p);
							p = localStorage.getItem('informator.lp-p('+lp.indexOf(zp[n])+')-z') || 0;	p++;
							localStorage.setItem('informator.lp-p('+lp.indexOf(zp[n])+')-z', p);
							p = localStorage.getItem('informator.lm-m('+lm.indexOf(zm[n])+')-z') || 0;	p++;
							localStorage.setItem('informator.lm-m('+lm.indexOf(zm[n])+')-z', p);
							p = localStorage.getItem('informator.lm-m('+lm.indexOf(zm[n])+')-p('+lp.indexOf(zp[n])+')-z') || 0;	p++;
							localStorage.setItem('informator.lm-m('+lm.indexOf(zm[n])+')-p('+lp.indexOf(zp[n])+')-z', p);}
					else if (zo[n] == "W konsultacji") {kons++;		tos[tos.length]=zt[n];	tds[tds.length]=zt[n];		dkons++;
							p = localStorage.getItem('informator.lo-k') || 0;	p++;
							localStorage.setItem('informator.lo-k', p);
							p = localStorage.getItem('informator.lp-p('+lp.indexOf(zp[n])+')-k') || 0;	p++;
							localStorage.setItem('informator.lp-p('+lp.indexOf(zp[n])+')-k', p);
							p = localStorage.getItem('informator.lm-m('+lm.indexOf(zm[n])+')-k') || 0;	p++;
							localStorage.setItem('informator.lm-m('+lm.indexOf(zm[n])+')-k', p);
							p = localStorage.getItem('informator.lm-m('+lm.indexOf(zm[n])+')-p('+lp.indexOf(zp[n])+')-k') || 0;	p++;
							localStorage.setItem('informator.lm-m('+lm.indexOf(zm[n])+')-p('+lp.indexOf(zp[n])+')-k', p);}
					else if (zo[n] == 'Nowe'){ocze++;				tos[tos.length]=zt[n];	tds[tds.length]=zt[n];		docze++;}
					else if (zm[n] != ''){rozp++;					tos[tos.length]=zt[n];	tds[tds.length]=zt[n];}
					else {n=51;}}
				else {
					if (zo[n] == "Prawidłowe") {popr++;				tos[tos.length]=zt[n];
						if (lds.indexOf(zt[n]) != -1){				dpopr++;
							p = localStorage.getItem('informator.lo-p') || 0;	p++;
							localStorage.setItem('informator.lo-p', p);
							p = localStorage.getItem('informator.lp-p('+lp.indexOf(zp[n])+')-p') || 0;	p++;
							localStorage.setItem('informator.lp-p('+lp.indexOf(zp[n])+')-p', p);
							p = localStorage.getItem('informator.lm-m('+lm.indexOf(zm[n])+')-p') || 0;	p++;
							localStorage.setItem('informator.lm-m('+lm.indexOf(zm[n])+')-p', p);
							p = localStorage.getItem('informator.lm-m('+lm.indexOf(zm[n])+')-p('+lp.indexOf(zp[n])+')-p') || 0;	p++;
							localStorage.setItem('informator.lm-m('+lm.indexOf(zm[n])+')-p('+lp.indexOf(zp[n])+')-p', p);
							tos[tos.length]=zt[n];
						}}
					else if (zo[n] == "Nieprawidłowe") {niep++;		tos[tos.length]=zt[n];
						if (lds.indexOf(zt[n]) != -1){				dniep++;
							p = localStorage.getItem('informator.lo-n') || 0;	p++;
							localStorage.setItem('informator.lo-n', p);
							p = localStorage.getItem('informator.lp-p('+lp.indexOf(zp[n])+')-n') || 0;	p++;
							localStorage.setItem('informator.lp-p('+lp.indexOf(zp[n])+')-n', p);
							p = localStorage.getItem('informator.lm-m('+lm.indexOf(zm[n])+')-n') || 0;	p++;
							localStorage.setItem('informator.lm-m('+lm.indexOf(zm[n])+')-n', p);
							p = localStorage.getItem('informator.lm-m('+lm.indexOf(zm[n])+')-p('+lp.indexOf(zp[n])+')-n') || 0;	p++;
							localStorage.setItem('informator.lm-m('+lm.indexOf(zm[n])+')-p('+lp.indexOf(zp[n])+')-n', p);
						}}
					else if (zo[n] == "Zmieniony powód") {zmie++;	tos[tos.length]=zt[n];
						if (lds.indexOf(zt[n]) != -1){				dzmie++;
							p = localStorage.getItem('informator.lo-z') || 0;	p++;
							localStorage.setItem('informator.lo-z', p);
							p = localStorage.getItem('informator.lp-p('+lp.indexOf(zp[n])+')-z') || 0;	p++;
							localStorage.setItem('informator.lp-p('+lp.indexOf(zp[n])+')-z', p);
							p = localStorage.getItem('informator.lm-m('+lm.indexOf(zm[n])+')-z') || 0;	p++;
							localStorage.setItem('informator.lm-m('+lm.indexOf(zm[n])+')-p', p);
							p = localStorage.getItem('informator.lm-m('+lm.indexOf(zm[n])+')-p('+lp.indexOf(zp[n])+')-z') || 0;	p++;
							localStorage.setItem('informator.lm-m('+lm.indexOf(zm[n])+')-p('+lp.indexOf(zp[n])+')-z', p);
						}}
					else if (zo[n] == "W konsultacji") {kons++;		tos[tos.length]=zt[n];	tds[tds.length]=zt[n];}
					else if (zo[n] == "Nowe"){ocze++;				tos[tos.length]=zt[n];	tds[tds.length]=zt[n];}
					else if (zm[n] != ''){rozp++;					tos[tos.length]=zt[n];	tds[tds.length]=zt[n];}
					else {n=51;}}
				n++;}

			//Aktualizowanie list sprawdzonych zgłoszeń i tych które trzeba sprawdzić ponownie
			m = 0; while (m < 2) {if (m==0){l='los-t(';}	if (m==1){l='lds-t(';}
			n = 0; while (n < 50){
				p = localStorage.getItem('informator.'+l+n+')') || 0;
				if (p != 0){localStorage.removeItem('informator.'+l+n+')');}
				else if (p == 0 && isNaN(parseFloat(tos[n])) && m==0){n=51;}
				else if (p == 0 && isNaN(parseFloat(tds[n])) && m==1){n=51;}
				if (!isNaN(parseFloat(tos[n])) && m==0){localStorage.setItem('informator.'+l+n+')', tos[n]);}
				else if (!isNaN(parseFloat(tds[n])) && m==1){localStorage.setItem('informator.'+l+n+')', tds[n]);}
				n++;} m++;}

		//Pokazywanie statystyki
		//Komunikat z informacją o braku danych
    	if (popr == 0 && niep == 0 && zmie == 0 && kons == 0 && rozp == 0 && ocze == 0){
			$('.bspace > ul:nth-child(3) > li:nth-child(3)').after('<li><a href="http://www.wykop.pl/naruszenia/informator">Statystyki</a></liv>');}
		else { var suma = popr + niep;
			if (suma != 0)
				{ var infpp = parseInt((popr/suma)*100);
				var infnpnp = parseInt((niep/suma)*100);}
			else { var infpp = 0; var infnpnp = 0;}

            var poprawne = parseFloat((popr/suma)*100).toFixed(1);
            var niepoprawne = parseFloat((niep/suma)*100).toFixed(1);

			if (inf1 == true){						//Dane w procentach
				var poprpokaz = poprawne +'%';
				var nieppokaz = niepoprawne +'%';}
			else { var poprpokaz = popr; var nieppokaz = niep;}
			var zmiepokaz = zmie;	var konspokaz = kons;	var oczepokaz = ocze;

			//Podpisy
			var titpop = 'title="Prawidłowe '+ popr +' ('+ poprawne +'%)"';
			var titnie = 'title="Nieprawidłowe '+ niep +' ('+ niepoprawne +'%)"';

			//Pokazywanie zmian statystyk
			if (inf3 == true) {
				if (dpopr != 0){var poprpokaz = '(+'+ dpopr +') '+ poprpokaz;}
				if (dniep != 0){var nieppokaz = nieppokaz + ' (+'+ dniep +')';}
				if (dzmie != 0){var zmiepokaz = zmiepokaz + ' (+'+ dzmie +')';}
				if (dkons != 0){var konspokaz = konspokaz + ' (+'+ dkons +')';}
				if (docze != 0){var oczepokaz = oczepokaz + ' (+'+ docze +')';}}

			//Panel oczekiwanych, rozpatrywanych i konsultowanych
			var niesprawdzone = ['','','','']
			if (ocze != 0){
					var titocz = 'title="Nowe '+ ocze +'"';
					niesprawdzone[2] = '<img height="'+ inicon[4] +'px" '+ titocz +' src="'+ inicon[3] +'"> ' + oczepokaz + '</span>';}
			if (kons != 0){
					var titkon = 'title="W konsultacji '+ kons +'"';
					niesprawdzone[1] = '<img height="'+ inicon[4] +'px" '+ titkon +' src="'+ inicon[5] +'"> ' + konspokaz + '</span>';}
			if (rozp != 0){
					var titroz = 'title="Rozpatrywane '+ rozp +'"';
					niesprawdzone[0] = '<img height="'+ inicon[4] +'px" '+ titroz +' src="'+ inicon[6] +'"> ' + rozp + '</span>';}
			if (zmie != 0){
					var titzmie = 'title="Zmienionym powód '+ zmie +'"';
					niesprawdzone[3] = '<img height="'+ inicon[4] +'px" '+ titzmie +' src="'+ inicon[7] +'"> ' + zmiepokaz + '</span>';}
			var panelns = niesprawdzone[0]+' '+niesprawdzone[1]+' '+niesprawdzone[2]+' '+niesprawdzone[3];

        	if (ocze == 0 && kons == 0 && rozp == 0 && zmie == 0) {
					$('.bspace > ul:nth-child(3) > li:nth-child(3)').after('<li><a href="http://www.wykop.pl/naruszenia/informator" title="Strona statystyk informatora">' + poprpokaz + ' <img height="'+ inicon[4] +'px" width="'+ (infpp+1) +'px" '+ titpop +' src="'+ inicon[1] +'"><img height="'+ inicon[4] +'px" width="'+ (infnpnp+1) +'px" '+ titnie +' src="'+ inicon[2] +'"> ' + nieppokaz + '</a></liv>');}
        	else if (suma != 0){
					$('.bspace > ul:nth-child(3) > li:nth-child(3)').after('<li><a href="http://www.wykop.pl/naruszenia/informator" title="Strona statystyk informatora">' + poprpokaz + ' <img height="'+ inicon[4] +'px" width="'+ (infpp+1) +'px" '+ titpop +' src="'+ inicon[1] +'"><img height="'+ inicon[4] +'px" width="'+ (infnpnp+1) +'px" '+ titnie +' src="'+ inicon[2] +'"> ' + nieppokaz + ' '+panelns+'</a></liv>');}
			else {
			$('.bspace > ul:nth-child(3) > li:nth-child(3)').after('<li><a href="http://www.wykop.pl/naruszenia/informator" title="Strona statystyk informatora">'+panelns+'</a></liv>');}}}

	//Strona ustawień i statystyk informatora
	else if (document.location.pathname.match('/naruszenia/informator')){
		//Strona ze statystkami
		var infkomunikat = 'Witaj w zakładce ustawień dodatku Informator!</p><p>Niżej znajdują się wykresy wygenerowane na podstawie danych zebranych przez dodatek oraz jego ustawienia. Jeśli podoba Ci się dodatek pamiętaj, że zawsze możesz go ocenić <a href="http://www.wykop.pl/dodatki/pokaz/409/">tutaj</a>. :)';
		var infpass = localStorage.getItem('informator.lo-o(pass)') || 0;
		var infspa = localStorage.getItem('informator.lo-o(space)') || 6;

		//Opcje generowania wykresów
		var infadres = location.pathname; var infadresf = infadres.split("/");

		var m = 0; while (m < 10){
			//Opcja ukrywania moderatorów
			if (infadresf[m] == 'modh'){
					p = localStorage.getItem('informator.lm-m('+infadresf[m+1]+')') || 0;
					if (p != 0 && infpass == infadresf[m+2]){
						infpass = Math.floor((Math.random() * 100) + 1);
						localStorage.setItem('informator.lo-o(pass)', infpass);
						q = localStorage.getItem('informator.lm-m('+infadresf[m+1]+')-o(1)') || 0;
						if (q == 0){localStorage.setItem('informator.lm-m('+infadresf[m+1]+')-o(1)', 1);
							infkomunikat = 'Statystyki moderatora '+p+' zostały ukryte!</p><p>Przywrócisz je wybierając jego kod w tabeli.';}
						else if (q == 1){localStorage.setItem('informator.lm-m('+infadresf[m+1]+')-o(1)', 0);
			infkomunikat = 'Statystyki moderatora '+p+' zostały przywrócone!</p><p>Możesz porównać teraz jego akcje z akcjami innych moderatorów.';} m=11;}}

			//Ustawienia spacji (co ile ma przypominać kody moderatorów)
			else if (infadresf[m] == 'mods'){
					if (infpass == infadresf[m+2]){
						infpass = Math.floor((Math.random() * 100) + 1);
						localStorage.setItem('informator.lo-o(pass)', infpass);
						if (infadresf[m+1] == 'u' && infspa > 1){infspa--;
							localStorage.setItem('informator.lo-o(space)', infspa);
							infkomunikat = 'Lista z kodami moderatorów została przesunięta w górę!</p><p>Ilość wierszy z powodami po których pojawi się ponownie to: <strong>'+infspa+'</strong>.';}
						else if (infadresf[m+1] == 'd' && infspa < 10){infspa++;
							localStorage.setItem('informator.lo-o(space)', infspa);
						infkomunikat = 'Lista z kodami moderatorów została przesunięta w dół!</p><p>Ilość wierszy z powodami po których pojawi się ponownie to: <strong>'+infspa+'</strong>.';}
		m=11;}}m++;}

		console.log('Odstęp pomiędzy ponownym wyświetleniem kodów moderatorów ma wartość '+infspa);

		//Generowanie wykresu na podstawie danych (rozmiar, prawidłowe, nieprawidłowe, w konsultacji, zmieniony powód)
		function informatorwykres(ro, pr, np, wk, zm) {
		var sumawykres = parseInt(pr+np+wk+zm);
		if (sumawykres != 0){
			var procentpr = '<br>Prawidłowych <br><strong>'+parseFloat(((pr+zm)/sumawykres)*100).toFixed(1)+'%</strong> z '+sumawykres;
			if (zm != 0){
				procentpr = '<br>Uzasadnionch <br><strong title="Zgłoszeń prawidłowych i ze zemienionym powodem.">'+parseFloat(((pr+zm)/sumawykres)*100).toFixed(1)+'%</strong> z '+sumawykres;}
			var procent;
			var sumaprocent = 0;

			//Układanie danych w prawidłowej kolejności
			var sortowanie = [pr,np,wk,zm]
			function sorta(a, b) {
			return a - b}
			sortowanie.sort()
			sortowanie.sort(sorta)
			sortowanie.reverse()

			//Opracowywanie wycinków wykresu
			var luk = 0;
			var aktluk = 0;
			var kolorluk;
			var powodwykres = '';

			if (pr != 0){powodwykres=powodwykres+'\n Prawidłowe : '+pr+' ('+parseFloat((pr/sumawykres)*100).toFixed(1)+'%)';}
			if (wk != 0){powodwykres=powodwykres+'\n W konsultacji : '+wk+' ('+parseFloat((wk/sumawykres)*100).toFixed(1)+'%)';}
			if (zm != 0){powodwykres=powodwykres+'\n Zmieniony powód : '+zm+' ('+parseFloat((zm/sumawykres)*100).toFixed(1)+'%)';}
			if (np != 0){powodwykres=powodwykres+'\n Nieprawidłowe : '+np+' ('+parseFloat((np/sumawykres)*100).toFixed(1)+'%)';}
			powodwykres = powodwykres+'\n ';

			while (luk < 4){
				if (sortowanie[luk] == pr){			aktluk=pr;	pr=0;	kolorluk='#4BC44B';}
				else if (sortowanie[luk] == wk){	aktluk=wk;  wk=0;	kolorluk='#2752C6';}
				else if (sortowanie[luk] == zm){	aktluk=zm;	zm=0;	kolorluk='#F67643';}
				else if (sortowanie[luk] == np){	aktluk=np;	np=0;	kolorluk='#F73B3B';}

				if (luk == 0){ var wykres = '<div style="margin: auto; width: '+ro+'px; height: '+ro+'px; position: relative; border-radius: '+ro+'px; background-color: '+kolorluk+';">';}

				//Sama generacja wycinków
				procent = parseInt((aktluk/sumawykres)*360);
				if (procent != 0){
					if (procent > 180){
						wykres = wykres+'<div style="position: absolute; top: 0px; left: 0px; width: '+ro+'px; height: '+ro+'px; border-radius: '+ro+'px; clip: rect(0px, '+ro+'px, '+ro+'px, 0px); transform: rotate('+sumaprocent+'deg);"><div title="'+powodwykres+'" style="background-color: '+kolorluk+'; position: absolute; top: 0px; left: 0px; width: '+ro+'px; height: '+ro+'px; border-radius: '+ro+'px; clip: rect(0px, '+(ro/2)+'px, '+ro+'px, 0px); transform: rotate(180deg);"></div></div>'
						procent = procent - 180;
						sumaprocent = sumaprocent+180;}
					wykres = wykres+'<div style="position: absolute; top: 0px; left: 0px; width: '+ro+'px; height: '+ro+'px; border-radius: '+ro+'px; clip: rect(0px, '+ro+'px, '+ro+'px, '+(ro/2)+'px); transform: rotate('+sumaprocent+'deg);"><div title="'+powodwykres+'" style="background-color: '+kolorluk+'; position: absolute; top: 0px; left: 0px; width: '+ro+'px; height: '+ro+'px; border-radius: '+ro+'px; clip: rect(0px, '+(ro/2)+'px, '+ro+'px, 0px); transform: rotate('+procent+'deg);"></div></div>';
					sumaprocent = sumaprocent+procent;}
				luk++;}
				wykres = wykres+'</div>'+procentpr;}
			else { var wykres = '<div title="Brak danych dla wybranego zakresu danych." style="margin: auto; width: '+ro+'px; height: '+ro+'px; position: relative; border-radius: '+ro+'px; background-color: #919191;"></div>';}
			return wykres;}

			var lw = []		//lm - lista wykresu
			var lwp = []
			var lwn = []
			var lwk = []
			var lwz = []
			var lwid = []
			var lws = []

			var panelstatystyk = '<table><tr><td colspan="0" style="text-align: center; vertical-align: middle;"><i class="fa fa-eye"></i> <strong>Moderatorzy</strong></td></tr><tr>';
			var panelstat = 0;

			//Ukryci moderatorzy
			var p = 0;	var n = 0; var q = 0; var r = 0;
			while (n < 50){
			p = localStorage.getItem('informator.lm-m('+n+')') || 0;
			q = localStorage.getItem('informator.lm-m('+n+')-o(1)') || 0;
			if (p != 0 && q == 1){
				if (r == 0) {panelstatystyk = panelstatystyk+'<tr><td colspan="0" style="text-align: center; font-size:x-small; vertical-align: middle;">'; r=1;}
				panelstatystyk = panelstatystyk+'&nbsp; <a href="http://www.wykop.pl/naruszenia/informator/modh/'+n+'/'+infpass+'" title="Wybierz by pokazać moderatora w statystykach."><i class="fa fa-eye"></i> '+p+'</a> &nbsp; '; n++;}
			else if (p != 0){n++;}
			else {n=51;}}
			if (r == 1) {panelstatystyk = panelstatystyk+'</td></tr>';}

			//Pobieranie statystyk ogólnych
				lwp[n] = parseInt(localStorage.getItem('informator.lo-p') || 0);
				lwn[n] = parseInt(localStorage.getItem('informator.lo-n') || 0);
				lwk[n] = parseInt(localStorage.getItem('informator.lo-k') || 0);
				lwz[n] = parseInt(localStorage.getItem('informator.lo-z') || 0);
				panelstatystyk = panelstatystyk+'<td style="text-align: center; vertical-align: middle;"><i class="fa fa-flag"></i> <strong>Wszystkie zgłoszenia</strong><br><br>'+informatorwykres(infroz[0],lwp[n],lwn[n],lwk[n],lwz[n])+'</td>';

			//Pobranie listy moderatorów
			var p = 0;	var n = 0; var q = 0;
				while (n < 50){
				p = localStorage.getItem('informator.lm-m('+n+')') || 0;
				q = localStorage.getItem('informator.lm-m('+n+')-o(1)') || 0;
				if (p != 0 && q == 0){
						lw[n] = p;
						panelstat = 1;
						lwp[n] = parseInt(localStorage.getItem('informator.lm-m('+n+')-p') || 0);
						lwn[n] = parseInt(localStorage.getItem('informator.lm-m('+n+')-n') || 0);
						lwk[n] = parseInt(localStorage.getItem('informator.lm-m('+n+')-k') || 0);
						lwz[n] = parseInt(localStorage.getItem('informator.lm-m('+n+')-z') || 0);
						panelstatystyk = panelstatystyk+'<td style="text-align: center; vertical-align: middle;"><a href="http://www.wykop.pl/naruszenia/informator/modh/'+n+'/'+infpass+'" title="Wybierz by ukryć moderatora w statystykach."><i class="fa fa-eye"></i> <strong>'+lw[n]+'</strong></a><br><br>'+informatorwykres(infroz[0],lwp[n],lwn[n],lwk[n],lwz[n])+'</td>';
						n++;}
				else if (p != 0){n++;}
				else {n=51;}}

				var panelstatystyk = panelstatystyk+'</tr>';

			var panelstatystyk = panelstatystyk+'<tr><td colspan="0" style="text-align: center; vertical-align: middle;"><i class="fa fa-flag-o"></i> <strong>Powody</strong></td></tr>';

			//Pobranie listy powodów i tworzenie tebeli do ich posortowania
			var p = 0;	var n = 0; var j = 0;
				while (n < 50){
				p = localStorage.getItem('informator.lp-p('+n+')') || 0;
				if (p != 0){
					panelstat = 1;
					lw[n] = p;
					lwp[n] = parseInt(localStorage.getItem('informator.lp-p('+n+')-p') || 0);
					lwn[n] = parseInt(localStorage.getItem('informator.lp-p('+n+')-n') || 0);
					lwk[n] = parseInt(localStorage.getItem('informator.lp-p('+n+')-k') || 0);
					lwz[n] = parseInt(localStorage.getItem('informator.lp-p('+n+')-z') || 0);

					lwid[n] = parseInt(lwp[n]+lwn[n]+lwk[n]+lwz[n]);
					lws[n] = '<tr><td colspan="0" style="text-align: center; vertical-align: middle;">'+lw[n]+'</td></tr><tr><td style="text-align: center; vertical-align: middle;">'+informatorwykres(infroz[1],lwp[n],lwn[n],lwk[n],lwz[n])+'</td>';

					var q = 0;	var m = 0; var r=0;
					while (m < 50){
					q = localStorage.getItem('informator.lm-m('+m+')') || 0;
					r = localStorage.getItem('informator.lm-m('+m+')-o(1)') || 0;
					if (q != 0 && r == 0){
							lwp[n] = parseInt(localStorage.getItem('informator.lm-m('+m+')-p('+n+')-p') || 0);
							lwn[n] = parseInt(localStorage.getItem('informator.lm-m('+m+')-p('+n+')-n') || 0);
							lwk[n] = parseInt(localStorage.getItem('informator.lm-m('+m+')-p('+n+')-k') || 0);
							lwz[n] = parseInt(localStorage.getItem('informator.lm-m('+m+')-p('+n+')-z') || 0);
							lws[n] = lws[n]+'<td style="text-align: center; font-size:x-small; vertical-align: middle;">'+informatorwykres(infroz[2],lwp[n],lwn[n],lwk[n],lwz[n])+'</td>'; m++;}
				else if (q != 0){m++;}
				else {m=51;}}
					lws[n] = lws[n]+'</tr>';}
				else {n=51;} n++;}

				//Sortowanie wykresów powodów tak aby powód najczęście rozpatrywany był na górze listy
				function informatorsort(a,b){
					var swapped; do {
						swapped = false;
						for (var i=0; i < a.length-1; i++) {
							if (a[i] > a[i+1]) {
								var temp = a[i];
								a[i] = a[i+1];
								a[i+1] = temp;

								var temp = b[i];
								b[i] = b[i+1];
								b[i+1] = temp;
								swapped = true;}}
					} while (swapped);}
				informatorsort(lwid,lws);
				lwid.reverse()
				lws.reverse()

				var n = 0;
				while (n < 50){
				if (lwid[n] > 0){
					panelstatystyk = panelstatystyk+lws[n]; n++; j++;
					if (j == infspa){
					if (infspa == 1){
						panelstatystyk = panelstatystyk+'</tr><tr><td style="text-align: center; vertical-align: middle;"><a href="http://www.wykop.pl/naruszenia/informator/mods/d/'+infpass+'" title="Wybierz by wiersz z moderatorami pojawiał się rzadziej.">↓</a></td>';}
					else {
						panelstatystyk = panelstatystyk+'</tr><tr><td style="text-align: center; vertical-align: middle;"><a href="http://www.wykop.pl/naruszenia/informator/mods/u/'+infpass+'" title="Wybierz by wiersz z moderatorami pojawiał się częśćiej.">↑</a> | <a href="http://www.wykop.pl/naruszenia/informator/mods/d/'+infpass+'" title="Wybierz by wiersz z moderatorami pojawiał się rzadziej.">↓</a></td>';}

					var w = 0;	var k = 0; var r = 0;
						while (k < 50){
						w = localStorage.getItem('informator.lm-m('+k+')') || 0;
						r = localStorage.getItem('informator.lm-m('+k+')-o(1)') || 0;
						if (w != 0 && r == 0){
								panelstatystyk = panelstatystyk+'<td style="text-align: center; vertical-align: middle;"><a href="http://www.wykop.pl/naruszenia/informator/modh/'+k+'/'+infpass+'" title="Wybierz by ukryć moderatora w statystykach."><i class="fa fa-eye"></i> <strong>'+w+'</strong></a></td>';k++;}
						else if (w != 0){k++;}
						else {k=51;}}
						panelstatystyk = panelstatystyk+'</tr>'; j = 0;}
					}
				else {if((infspa > n && n > 1) || infspa < 1){localStorage.setItem('informator.lo-o(space)', n); console.log('Odstęp pomiędzy kolejnymi wierszami został zmniejszony tak by były one widoczne.');} n=51;}}

				panelstatystyk = panelstatystyk+'</tr></table>';
				if (panelstat == 0){panelstatystyk = 'Informator nie naliczył jeszcze żadnych zgłoszeń przejdź do zakładki "<a href="http://www.wykop.pl/naruszenia/moje/">Zgłoszenia</a>" żeby mógł to zrobić. Jeśli na wspomnianej stronie znajdują się zgłoszenia, a mimo to nie ma tu statystyk skontaktuj się ze mną klikając <a href="http://www.wykop.pl/wiadomosc-prywatna/konwersacja/Deykun" title="Konwersacja z @Deykun">tutaj</a>. :)';}

		$('.bspace > ul:nth-child(3) > li:nth-child(3)').after('<li class="active"><a href="http://www.wykop.pl/naruszenia/informator">Statystyki</a></liv>');

		var ustawienia = '<div class = "row"><input id="inf3" name="inf3" class="checkbox" type="checkbox" value="on" ' + (inf3 ? 'checked="checked"' : '') + '><label class="inline" for="inf3"> pokazuj zmiany od ostatniej wizyty na stronie naruszeń</label></div><div class="row"><input id="inf1" name="inf1" class="chk-box" type="checkbox" value="on" ' + (inf1 ? 'checked="checked"' : '') + '></input><label class="inline" for="inf1"> rozpatrzone zgłoszenia w procentach</label></div><div class="row"><input id="inf2" name="inf2" class="checkbox" type="checkbox" value="on" ' + (inf2 ? 'checked="checked"' : '') + '></input><label class="inline" for="inf2"> nie pokazuj miniatur znalezisk w panelu naruszeń</label></div></div></fieldset><div class="mark-bg space"><fieldset class="row buttons"><p><input value="Zapisz ustawienia" type="submit"></input></fieldset></div>';

		//Zapisywanie ustawień informatora
		//inf1 - wyświetlanie %
		if ($('#inf1').is(':checked')){
			$('#info1').attr('disabled', true);}

		$('#inf1').click(function () {
			if (this.checked) {
				$('#info1').attr('disabled', true);}
			else {
				$('#info1').removeAttr('disabled');
				$('#info1').attr('checked', false);}});

		$(document).delegate('form', 'submit', function () {
			localStorage.setItem('inf1_data', $('input[name*="user"][name!="user[info1]"]').serialize());
			if ($('#inf1').is(':checked')) {localStorage.setItem('informator.lo-o(0)', $('#inf1').val());}
			else {localStorage.setItem('informator.lo-o(0)', 'off');}});

		//inf2 - wyświetlanie tylko kwadratów
		if ($('#inf2').is(':checked')){
			$('#info2').attr('disabled', true);}

		$('#inf2').click(function () {
			if (this.checked) {
				$('#info2').attr('disabled', true);}
			else {
				$('#info2').removeAttr('disabled');
				$('#info2').attr('checked', false);}});

		$(document).delegate('form', 'submit', function () {
			localStorage.setItem('inf2_data', $('input[name*="user"][name!="user[info2]"]').serialize());
			if ($('#inf2').is(':checked')) {localStorage.setItem('informator.lo-o(1)', $('#inf2').val());}
			else {localStorage.setItem('informator.lo-o(1)', 'off');}});

		//inf3 - zmiany
		if ($('#inf3').is(':checked')){
			$('#info3').attr('disabled', true);}

		$('#inf3').click(function () {
			if (this.checked) {
				$('#info3').attr('disabled', true);}
			else {
				$('#info3').removeAttr('disabled');
				$('#info3').attr('checked', false);}});

		$(document).delegate('form', 'submit', function () {
			localStorage.setItem('inf3_data', $('input[name*="user"][name!="user[info3]"]').serialize());
			if ($('#inf3').is(':checked')) {localStorage.setItem('informator.lo-o(2)', $('#inf3').val());}
			else {localStorage.setItem('informator.lo-o(2)', 'off');}});

		$('div[class="error-page width-two-third make-center-block m-set-fullwidth"]').replaceWith('<div class="rbl-block"><div class="annotation type-light-info space"><i class="fa fa-info-circle"></i><p>'+infkomunikat+'<p></div></div><div class="rbl-block space"><form method="post"><fieldset><h4>Legenda</h4><div class="space"><img src="'+inicon[6]+'"></img> Obecnie rozpatrywane &nbsp; &nbsp; <img src="'+inicon[3]+'"></img> Nowe &nbsp; &nbsp; <img src="'+inicon[1]+'"></img> Prawidłowe &nbsp; &nbsp; <img src="'+inicon[2]+'"></img> Nieprawidłowe &nbsp; &nbsp; <img src="'+inicon[7]+'"></img> Zmieniony powód &nbsp; &nbsp; <img src="'+inicon[5]+'"></img> W konsultacji</div><br></fieldset><fieldset><h4>Statystyki</h4><div class="space">'+panelstatystyk+'</div></fieldset><fieldset><h4>Ustawienia</h4><div class="space">'+ustawienia+'</div></form></div>');}

	//Inne strony w /naruszenia/ na których znajduję się guzik przenoszący do statystyk informatora
	else if (document.location.pathname.match('/naruszenia/')){
		$('.bspace > ul:nth-child(3) > li:nth-child(3)').after('<li><a href="http://www.wykop.pl/naruszenia/informator">Statystyki</a></liv>');
		}});}

var script = document.createElement('script');
script.textContent = '(' + main.toString() + ')();';
document.body.appendChild(script)

window.G_wait = function G_wait() {
  if(typeof unsafeWindow.jQuery == 'undefined') {window.setTimeout(G_wait,100);}
  else {$ = unsafeWindow.jQuery; start_fancy();}}