Kick all Spaming ad.
当前为
// ==UserScript==
// @name DC - AntiSpam
// @author Ladoria
// @namespace InGame
// @match http://www.dreadcast.net/Main
// @require http://code.jquery.com/jquery-latest.min.js
// @version 1.10
// @grant none
// @description Kick all Spaming ad.
// ==/UserScript==
var activate = true;
var hardKick = true; //kick all ad form the same spam
var allUserKick = false; //kick all ad form all spam
var count = 0;
var delay = 3; //minutes
delay = delay * 60 * 1000;
jQuery.noConflict();
$(document).ready( function() {
function KickThoseShittyFuckingBrainlessAnonymousStupidities() {
//console.log('kicking...');
count = 0;
var ad = $('.petites_annonces tr');
var previousAd = ad.eq(0);
for(var i = 1; i < ad.length; i++) {
//console.log('scan : ' + i);
if(true == allUserKick ||get_name(ad.eq(i)) == get_name(previousAd)) {
//console.log('same name : ' + get_name(ad.eq(i)));
if(get_title(ad.eq(i)) == get_title(previousAd)) {
//console.log('same title : ' + get_title(ad.eq(i)));
if(to_date(get_date(ad)).getTime() >= to_date(get_date(previousAd)).getTime() - delay) {
hide_ad(ad.eq(i));
if(true == hardKick)
hide_ad(previousAd);
}
//console.log('insuffisant delay : ' + (to_date(get_date(ad)).getTime() - to_date(get_date(previousAd)).getTime()));
}
}
previousAd = ad.eq(i);
}
$('#AntiSpam_count').html(count);
}
function get_name(ad) {
return ad.children('td').first().html();
}
function get_title(ad) {
return ad.children('td').eq(1).children('span').html();
}
function get_date(ad) {
return ad.children('td').eq(2).html();
}
function to_date(text_date) {
var day = text_date.substring(0,2);
var month = text_date.substring(3,5);
var year = text_date.substring(6,10);
var hour = text_date.substring(11,13);
var minute = text_date.substring(14,16);
return new Date(year,month,day,hour,minute,0,0);
}
function hide_ad(ad) {
ad.hide();
ad.addClass('AntiSpam');
count++;
}
function show_all() {
$('.petites_annonces tr').each( function() {
$(this).show();
});
}
$(document).on('click', '#AntiSpam_allUserKick', function() {
//console.log('AntiSpam_allUserKick');
allUserKick = !allUserKick;
if(true == allUserKick)
$(this).html('è_é');
else
$(this).html('é_è');
if(true == activate)
KickThoseShittyFuckingBrainlessAnonymousStupidities();
});
$(document).on('click', '#AntiSpam_activate', function() {
//console.log('AntiSpam_activate');
activate = !activate;
if(true == activate) {
KickThoseShittyFuckingBrainlessAnonymousStupidities();
$(this).html('ON');
}
else {
show_all();
$(this).html('OFF');
}
});
$(document).ajaxComplete( function(a,b,c) {
if(/ItemAITL\/Annonce\/Find/.test(c.url)) {
if(0 == $('#AntiSpam').length) {
$('.petites_annonces .titre').append('<span id="AntiSpam"> - LadoSpam™ <span id="AntiSpam_activate" class="btnTxt" title="Activer/Désactiver">ON</span> | <span id="AntiSpam_allUserKick" class="btnTxt" title="Montrer ou non de la pitié">é_è</span> | > <span id="AntiSpam_count" title="SPAMs détectés">0</span> <</span>');
}
KickThoseShittyFuckingBrainlessAnonymousStupidities();
}
});
$('head').append('<style>#AntiSpam {font-size : 10px; text-transform: none;}.AntiSpam {color: red};</style>');
});
/*
<span id="AntiSpam"> - LadoSpam™
<span id="AntiSpam_activate" class="btnTxt" title="Activer/Désactiver">ON</span>
|
<span id="AntiSpam_hardKick" class="btnTxt" title="Montrer ou non de la pitié">è_é</span>
|
<span id="AntiSpam_count" title="SPAMs détectés">0</span>
</span>
#AntiSpam {font-size : 10px; text-transform: none;}
.AntiSpam {color: red};
*/
console.log('DC - AntiSpam started');