Přidat debatu mezi oblíbenéZasílat nové příspěvky e-mailemDůležité Detrollizer na debaty.net

Tady je jednoduchý skriptík pro Greasemonkey. Vymaže thready specifikovaných userů (v proměnné blockedUsers) a jejich posty, reakce na ně jsem zatím nechal, ale daly by se taky hajdnout.


// ==UserScript==
// @name        debaty.net
// @namespace   debaty
// @description Skryti prispevku vybranych uzivatelu na debaty.net
// @include     http://debaty.net/*
// @version     1
// @grant       none
// ==/UserScript==

// type usernames to hide 
var blockedUsers = ["MaSo" , "šamponek"];

$( document ).ready(function() {
    hideBlockedUsers();
});


function hideBlockedUsers() {
    
    // hide posts
    $('.details small:first-child').each(function(i, obj) {
        var nickElement = $ (this).find('a:first');
        var nick = nickElement.html();
        
        if (isBlocked(nick)){
            nickElement.parent().parent().parent().parent().css('display', 'none');
        }
    });
    
    //hide threads
    $('.text-overflow').each(function(i, obj) {
       var nickElement = $(this).find('a:first');
       var nick = nickElement.html();
      
         if (isBlocked(nick)){
            nickElement.parent().parent().css('display', 'none');
        }
    });
}

function isBlocked(login) {
    for (var i = 0 ; i < blockedUsers.length; i++){
        if (blockedUsers[i] === login) {
            return true;
        }
    } 
    return false;
}

Enjoy! :-)

Pripadne bugy/zdokonaleni opravim/zapracuji...

Dovolil jsem si připíchnout pro slabší kusy, aby je z toho nepiclo, až se budou brodit Debatami. ;-)(touchwood)

Jsou zobrazeny jen nové příspěvky. Zobrazit všechny
Předmět Autor Datum
Ještě mě napadlo, že by se dalo využít zdejšího tagu spoiler. A to tak, že bych posty blockedUsers z…
MaSo 13.10.2014 15:03
MaSo
Jo, to by bylo lepší. Matně si vzpomínám na doby Živě, nefungoval tam podobně "Trotlík"? nový
L-Core 13.10.2014 18:23
L-Core
Paráda! To snad už zavře hubu nenávistným štváčům :-)
Chocholoušek 13.10.2014 15:16
Chocholoušek
Už si tě přidávám! :-) nový
IQ37 13.10.2014 15:17
IQ37
Dík, já zatím nemám potřebu, jelikož co člověk, to názor :-) nový
Chocholoušek 13.10.2014 15:20
Chocholoušek
Chválím, přestože tě momentálně nevidím! :-) Ale ještě poznámečka. Tohle je samozřejmě výborné řeše…
IQ37 13.10.2014 15:16
IQ37
Ale to jeho trolení už nepadne na (tak) úrodnou půdu.. :-) Troll potřebuje odezvu.. nový
Niko Bellic 13.10.2014 15:23
Niko Bellic
Troll přestane trolit, když zjistí, že to nikoho nezajímá. nový
JR_Ewing 13.10.2014 15:26
JR_Ewing
Test spoileru. nový
MaSo 13.10.2014 15:26
MaSo
Super prace diky moc :-) nový
Roker 13.10.2014 15:57
Roker
Díky moc, ještě že tu máme fungující komunitu. Takhle se debaty budou zas dát číst bez zbytečného zv… nový
Redsnake 13.10.2014 17:03
Redsnake
Pro začátek určitě dobré, ale schválně jsem si otevřel pár delších diskuzí a tento způsob, kdy se ig… nový
Niko Bellic 13.10.2014 17:37
Niko Bellic
Čili tebe to spíš svádí k tomu číst "závadné" příspěvky, nežli je prostě a jednoduše ignorovat. nový
Chocholoušek 13.10.2014 17:54
Chocholoušek
Přečti si to ještě jednou. Upozorňuji na to, že když se nezobrazí celý příspěvek, tak dojde ke ztrát… nový
Niko Bellic 13.10.2014 18:05
Niko Bellic
Takže první reklamace, ale MaSo už prý pracuje na spoileru ;-) nový
Chocholoušek 13.10.2014 18:10
Chocholoušek
Reklamace je škaredé slovo. Je to konstruktivní kritika. :-) nový
Niko Bellic 13.10.2014 18:16
Niko Bellic
// ==UserScript== // @name debaty.net // @namespace debaty // @description Skryti prispevku vybranyc… nový
MaSo 13.10.2014 20:30
MaSo
Velice výborná práce. Jsem tu první den, ale už dnes jsem narazil na blbce, který sem chodí jen prov… nový
Mnauik 13.10.2014 20:47
Mnauik
You da real MVP. Je to zvláštní, ale zatím jsem si tam přidal jen jedno jméno. Nesouhlasím tu s cel… nový
Moas 13.10.2014 20:53
Moas
Super :beer::beer: nový
Niko Bellic 13.10.2014 21:00
Niko Bellic
Detrollizer 1.2 :-) changelog: + opravena funkčnost detrollizace při stránkování v debatách + oprav… nový
MaSo 14.10.2014 15:21
MaSo
Hele, když přidám více jak jednoho uživatele, nefunguje. Řádek vypadá takto: var blockedUsers = ["M… nový
Zarniwúp 14.10.2014 16:19
Zarniwúp
Jestlipak nebudeš muset mít v uvozovkách každého zvlášť... nový
Chocholoušek 14.10.2014 16:22
Chocholoušek
Každé jméno dej do uvozovek. var blockedUsers = ["MaSo" , "fleg"]; nový
Niko Bellic 14.10.2014 16:23
Niko Bellic
Ano, takto je to správně. nový
MaSo 14.10.2014 16:26
MaSo
Aha, no jo. :-) nový
Zarniwúp 14.10.2014 16:28
Zarniwúp
Možná jsem to rozbil já, ale v Chrome, v Tampermonkey nefunguje ta fce spoileru. Příspěvky detrolliz… nový
Redsnake 17.10.2014 22:14
Redsnake
Taky jsi to mohl rovnou napsat jako článek ;-) nový
touchwood 16.10.2014 19:01
touchwood
Pěkné, ale já bych měl z postu krotitele divé zvěře sledovat vše a používat only mentální detrollizé… nový
mif 18.10.2014 00:35
mif
dříve to bejvalo lehčí... !lunarize /all:-p nový
kmochna 19.10.2014 20:12
kmochna
:-D nový
mif 20.10.2014 06:52
mif
http://extension.maxthon.com/detail/index.php?view_id=1680 max funkční. nový
kmochna 20.10.2014 07:26
kmochna
Tak místo aby jste trola odstranili administrátoři jedním klikem, tak se mají všichni srát s nějakým… nový
Mojmír 20.10.2014 17:11
Mojmír
demokracie je těžká věc. vůbec jim to nezávidím, ale rozhodnutí mají správné. nový
kmochna 20.10.2014 17:14
kmochna
A kto urcit kto je trol a kto nie? Zopar jednicov sme tu uz idstranili, ale vo vseobecnosti by vlast… poslední
fleg 24.10.2014 10:06
fleg

Pro začátek určitě dobré, ale schválně jsem si otevřel pár delších diskuzí a tento způsob, kdy se ignoruje celý příspěvek blokované osoby udělá z diskuze pořádný guláš. Např. si tam uživatelé odpovídají sami sobě, nebo někomu, komu původně neodpovídali - je sice vidět 2x větší odsazení příspěvků, ale dá se v tom pořádně ztratit i tak. Já myslím, že by měl příspěvek zůstat tak jak byl, ale jeho obsah skrýt.

// ==UserScript==
// @name        debaty.net
// @namespace   debaty
// @description Skryti prispevku vybranych uzivatelu na debaty.net
// @include     http://debaty.net/*
// @version     1
// @grant       none
// ==/UserScript==

// type usernames to hide 
var blockedUsers = ["MaSo" , "šamponek"];

$( document ).ready(function() {
    hideBlockedUsers();
});


function hideBlockedUsers() {       
    //hide threads
    $('.text-overflow').each(function(i, obj) {
       var nickElement = $(this).find('a:first');
       var nick = nickElement.html();
      
         if (isBlocked(nick)){
            nickElement.parent().parent().css('display', 'none');
        }
    }); 
    
    // hide posts
    $('.details small:first-child').each(function(i, obj) {
        var nickElement = $(this).find('a:first');
        var nick = nickElement.html();
        if (isBlocked(nick)){
            var postElement = nickElement.parent().parent().parent().find('div:first');
            var postContent = postElement.html();
            postElement.empty();
            postElement.append(detrollizePostContent(postContent))            
        }	
    });
    
     $('div.detrollizer').detrollize();   
}

function isBlocked(login) {
    for (var i = 0 ; i < blockedUsers.length; i++){
        if (blockedUsers[i] === login) {
            return true;
        }
    } 
    return false;
}

function detrollizePostContent(content) {
  return '<div class="detrollizer" style="display : none">' + content + '</div>'
}

(function($) {
	$.fn.detrollize = function(settings) {
		settings = jQuery.extend({
			text: 'Detrollized!'
		},settings);
		this
			.wrap('<div class="spoiler-wrapper" />')
			.parent()
			.prepend(
				$('<div class="spoiler_title">')
					.click(function() {
						$(this).parent().toggleClass('spoiler-expanded');
						$(this).next('.detrollizer').slideToggle();
					})
					.text(settings.text)
				)
		return this;
	};
})(jQuery);

Nový skriptík, který používá upravený tag spoiler místo skrývání celých příspěvků...

You da real MVP.

Je to zvláštní, ale zatím jsem si tam přidal jen jedno jméno. Nesouhlasím tu s celou řadou názorů ale opravdu sejří mě jen jeden člověk. Koneckonců od debaty člověk očekává, že se budou střetávat protichůdné názory a nebude se jen souhlasně mručet, žeáno. Od toho je Ulhánův blog a jemu podobné.

Detrollizer 1.2 :-)

changelog:
+ opravena funkčnost detrollizace při stránkování v debatách
+ opravena funkčnost detrollizovaní příspěvku, který už obsahoval tag spoiler


// ==UserScript==
// @name        debaty.net
// @namespace   debaty
// @description Skryti prispevku vybranych uzivatelu na debaty.net
// @include     http://debaty.net/*
// @version     1.2
// @grant       none
// ==/UserScript==

// type usernames to hide 
var blockedUsers = ["MaSo"];

$(document).ready(function() {
    hideBlockedUsers();
});

$(document).ajaxComplete(function() {
    hideBlockedUsers();
});

function hideBlockedUsers() {       
    //hide threads
    $('.text-overflow').each(function(i, obj) {
       var nickElement = $(this).find('a:first');
       var nick = nickElement.html();
        if (isBlocked(nick)) {
          nickElement.parent().parent().css('display', 'none');
        }
    }); 
    
    // hide posts
    $('.details small:first-child').each(function(i, obj) {
        var nickElement = $(this).find('a:first');
        var nick = nickElement.html();
        if (isBlocked(nick)){
            var postElement = nickElement.parent().parent().parent().find('div:first');
            var postContent = postElement.html();
            
            // post has spoiler
            if(postElement.find('div.spoiler').length != 0) {
                postContent = postElement.find('div.spoiler').html();
            }
            postElement.html(detrollizePostContent(postContent))            
        }	
    });
    
    $('div.detrollizer').detrollize();   
}

function isBlocked(login) {
    for (var i = 0 ; i < blockedUsers.length; i++){
        if (blockedUsers[i] === login) {
            return true;
        }
    } 
    return false;
}

function detrollizePostContent(content) {
  return '<div class="detrollizer" style="display : none">' + content + '</div>'
}

(function($) {
	$.fn.detrollize = function(settings) {
		settings = jQuery.extend({
			text: 'Detrollized!'
		},settings);
		this
			.wrap('<div class="spoiler-wrapper" />')
			.parent()
			.prepend(
				$('<div class="spoiler_title">')
					.click(function() {
						$(this).parent().toggleClass('spoiler-expanded');
						$(this).next('.detrollizer').slideToggle();
					})
					.text(settings.text)
				)
		return this;
	};
})(jQuery);

Možná jsem to rozbil já, ale v Chrome, v Tampermonkey nefunguje ta fce spoileru. Příspěvky detrollizovaných tro(t)llů jsou prázdné. Ne, že by mě nakonec zajímalo, co píšou, já jen že hlásit se to musí, když to nefunguje.

Každopádně dík. Sbohem některým jedincům.
EDIT: A kdyby šlo doladit, aby po detrollených jedincích nezůstávala +1 pokud napíšou příserek...bylo by to báječné.

A kto urcit kto je trol a kto nie? Zopar jednicov sme tu uz idstranili, ale vo vseobecnosti by vlastnost debat mala byt hlavne volnost konfrontacie.
Idealna moznost ako znicit trola je nereagovat nanho, oni v drvivej vacsine potrebuju konfrontaciu a reakcie, inak stracaju zaujem.
Preto sme tu mali pekny obrazok, ze nekrmte trolla a toho sa treba drzat.

Zpět do debat Přispět do debaty Nahoru