Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name IgnoreScript
- // @description helps to ignore people
- // @namespace SumpfiScripts
- // @include http://forum.worldofplayers.de/*
- // @version 0.5
- // ==/UserScript==
- /*****************************
- Syntax:
- ["NAME"]
- User NAME wird komplett ignoriert
- Achtung: blöcke mit Komma trennen, hinter dem letzten Block kein
- Level Einstellung (wie stark man jemanden ignorieren möchte):
- ["NAME", NUM]
- Für NUM ganze Zahlen zwischen 0 und 3 einsetzen
- 0 nur Umfragen werden ignoriert
- 1 alle Threads werden ignoriert
- 2 alle Posts werden ignoriert
- 3 alle Erwähnungen (Zitate, oder sonstige Vorkommen des geblockten Namens) werden ignoriert
- Feine Einstellung:
- ["NAME", polls, threads, posts, text]
- für polls/threads/posts/text jeweils true(an) oder false(aus) einsetzen
- Man kann auch nur die ersten paar Parameter spezifizieren, die restlichen werden dann automatisch als false interpretiert
- Bsp:
- ["Hans", true, false, true]
- ignoriert alle Umpfragen und posts von Hans, zeigt aber seine Threads und etwaige Zitate an
- */
- /*
- Umlaute bitte nach dieser Tabelle codieren
- Ä = %C4
- Ö = %D6
- Ü = %DC
- ä = %E4
- ö = %F6
- ü = %FC
- ß = %DF
- */
- var userList = [
- ["UserA"],
- ["UserB",0],
- ["UserC",1],
- ["UserD",false,false,true],
- ["UserE"]
- ];
- // Zepto.js
- // (c) 2010-2014 Thomas Fuchs
- // Zepto.js may be freely distributed under the MIT license.
- var Zepto=function(){function _(e){return e==null?String(e):N[C.call(e)]||"object"}function D(e){return _(e)=="function"}function P(e){return e!=null&&e==e.window}function H(e){return e!=null&&e.nodeType==e.DOCUMENT_NODE}function B(e){return _(e)=="object"}function j(e){return B(e)&&!P(e)&&Object.getPrototypeOf(e)==Object.prototype}function F(e){return e instanceof Array}function I(e){return typeof e.length=="number"}function q(e){return o.call(e,function(e){return e!=null})}function R(e){return e.length>0?n.fn.concat.apply([],e):e}function U(e){return e.replace(/::/g,"/").replace(/([A-Z]+)([A-Z][a-z])/g,"$1_$2").replace(/([a-z\d])([A-Z])/g,"$1_$2").replace(/_/g,"-").toLowerCase()}function z(e){return e in f?f[e]:f[e]=new RegExp("(^|\\s)"+e+"(\\s|$)")}function W(e,t){return typeof t=="number"&&!l[U(e)]?t+"px":t}function X(e){var t,n;if(!a[e]){t=u.createElement(e);u.body.appendChild(t);n=getComputedStyle(t,"").getPropertyValue("display");t.parentNode.removeChild(t);n=="none"&&(n="block");a[e]=n}return a[e]}function V(e){return"children"in e?s.call(e.children):n.map(e.childNodes,function(e){if(e.nodeType==1)return e})}function $(n,r,i){for(t in r)if(i&&(j(r[t])||F(r[t]))){if(j(r[t])&&!j(n[t]))n[t]={};if(F(r[t])&&!F(n[t]))n[t]=[];$(n[t],r[t],i)}else if(r[t]!==e)n[t]=r[t]}function J(e,t){return t==null?n(e):n(e).filter(t)}function K(e,t,n,r){return D(t)?t.call(e,n,r):t}function Q(e,t,n){n==null?e.removeAttribute(t):e.setAttribute(t,n)}function G(t,n){var r=t.className,i=r&&r.baseVal!==e;if(n===e)return i?r.baseVal:r;i?r.baseVal=n:t.className=n}function Y(e){var t;try{return e?e=="true"||(e=="false"?false:e=="null"?null:!/^0/.test(e)&&!isNaN(t=Number(e))?t:/^[\[\{]/.test(e)?n.parseJSON(e):e):e}catch(r){return e}}function Z(e,t){t(e);for(var n in e.childNodes)Z(e.childNodes[n],t)}var e,t,n,r,i=[],s=i.slice,o=i.filter,u=window.document,a={},f={},l={"column-count":1,columns:1,"font-weight":1,"line-height":1,opacity:1,"z-index":1,zoom:1},c=/^\s*<(\w+|!)[^>]*>/,h=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,p=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/^(?:body|html)$/i,v=/([A-Z])/g,m=["val","css","html","text","data","width","height","offset"],g=["after","prepend","before","append"],y=u.createElement("table"),b=u.createElement("tr"),w={tr:u.createElement("tbody"),tbody:y,thead:y,tfoot:y,td:b,th:b,"*":u.createElement("div")},E=/complete|loaded|interactive/,S=/^\.([\w-]+)$/,x=/^#([\w-]*)$/,T=/^[\w-]*$/,N={},C=N.toString,k={},L,A,O=u.createElement("div"),M={tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"};k.matches=function(e,t){if(!t||!e||e.nodeType!==1)return false;var n=e.webkitMatchesSelector||e.mozMatchesSelector||e.oMatchesSelector||e.matchesSelector;if(n)return n.call(e,t);var r,i=e.parentNode,s=!i;if(s)(i=O).appendChild(e);r=~k.qsa(i,t).indexOf(e);s&&O.removeChild(e);return r};L=function(e){return e.replace(/-+(.)?/g,function(e,t){return t?t.toUpperCase():""})};A=function(e){return o.call(e,function(t,n){return e.indexOf(t)==n})};k.fragment=function(t,r,i){var o,a,f;if(h.test(t))o=n(u.createElement(RegExp.$1));if(!o){if(t.replace)t=t.replace(p,"<$1></$2>");if(r===e)r=c.test(t)&&RegExp.$1;if(!(r in w))r="*";f=w[r];f.innerHTML=""+t;o=n.each(s.call(f.childNodes),function(){f.removeChild(this)})}if(j(i)){a=n(o);n.each(i,function(e,t){if(m.indexOf(e)>-1)a[e](t);else a.attr(e,t)})}return o};k.Z=function(e,t){e=e||[];e.__proto__=n.fn;e.selector=t||"";return e};k.isZ=function(e){return e instanceof k.Z};k.init=function(t,r){var i;if(!t)return k.Z();else if(typeof t=="string"){t=t.trim();if(t[0]=="<"&&c.test(t))i=k.fragment(t,RegExp.$1,r),t=null;else if(r!==e)return n(r).find(t);else i=k.qsa(u,t)}else if(D(t))return n(u).ready(t);else if(k.isZ(t))return t;else{if(F(t))i=q(t);else if(B(t))i=[t],t=null;else if(c.test(t))i=k.fragment(t.trim(),RegExp.$1,r),t=null;else if(r!==e)return n(r).find(t);else i=k.qsa(u,t)}return k.Z(i,t)};n=function(e,t){return k.init(e,t)};n.extend=function(e){var t,n=s.call(arguments,1);if(typeof e=="boolean"){t=e;e=n.shift()}n.forEach(function(n){$(e,n,t)});return e};k.qsa=function(e,t){var n,r=t[0]=="#",i=!r&&t[0]==".",o=r||i?t.slice(1):t,u=T.test(o);return H(e)&&u&&r?(n=e.getElementById(o))?[n]:[]:e.nodeType!==1&&e.nodeType!==9?[]:s.call(u&&!r?i?e.getElementsByClassName(o):e.getElementsByTagName(t):e.querySelectorAll(t))};n.contains=function(e,t){return e!==t&&e.contains(t)};n.type=_;n.isFunction=D;n.isWindow=P;n.isArray=F;n.isPlainObject=j;n.isEmptyObject=function(e){var t;for(t in e)return false;return true};n.inArray=function(e,t,n){return i.indexOf.call(t,e,n)};n.camelCase=L;n.trim=function(e){return e==null?"":String.prototype.trim.call(e)};n.uuid=0;n.support={};n.expr={};n.map=function(e,t){var n,r=[],i,s;if(I(e))for(i=0;i<e.length;i++){n=t(e[i],i);if(n!=null)r.push(n)}else for(s in e){n=t(e[s],s);if(n!=null)r.push(n)}return R(r)};n.each=function(e,t){var n,r;if(I(e)){for(n=0;n<e.length;n++)if(t.call(e[n],n,e[n])===false)return e}else{for(r in e)if(t.call(e[r],r,e[r])===false)return e}return e};n.grep=function(e,t){return o.call(e,t)};if(window.JSON)n.parseJSON=JSON.parse;n.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){N["[object "+t+"]"]=t.toLowerCase()});n.fn={forEach:i.forEach,reduce:i.reduce,push:i.push,sort:i.sort,indexOf:i.indexOf,concat:i.concat,map:function(e){return n(n.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return n(s.apply(this,arguments))},ready:function(e){if(E.test(u.readyState)&&u.body)e(n);else u.addEventListener("DOMContentLoaded",function(){e(n)},false);return this},get:function(t){return t===e?s.call(this):this[t>=0?t:t+this.length]},toArray:function(){return this.get()},size:function(){return this.length},remove:function(){return this.each(function(){if(this.parentNode!=null)this.parentNode.removeChild(this)})},each:function(e){i.every.call(this,function(t,n){return e.call(t,n,t)!==false});return this},filter:function(e){if(D(e))return this.not(this.not(e));return n(o.call(this,function(t){return k.matches(t,e)}))},add:function(e,t){return n(A(this.concat(n(e,t))))},is:function(e){return this.length>0&&k.matches(this[0],e)},not:function(t){var r=[];if(D(t)&&t.call!==e)this.each(function(e){if(!t.call(this,e))r.push(this)});else{var i=typeof t=="string"?this.filter(t):I(t)&&D(t.item)?s.call(t):n(t);this.forEach(function(e){if(i.indexOf(e)<0)r.push(e)})}return n(r)},has:function(e){return this.filter(function(){return B(e)?n.contains(this,e):n(this).find(e).size()})},eq:function(e){return e===-1?this.slice(e):this.slice(e,+e+1)},first:function(){var e=this[0];return e&&!B(e)?e:n(e)},last:function(){var e=this[this.length-1];return e&&!B(e)?e:n(e)},find:function(e){var t,r=this;if(typeof e=="object")t=n(e).filter(function(){var e=this;return i.some.call(r,function(t){return n.contains(t,e)})});else if(this.length==1)t=n(k.qsa(this[0],e));else t=this.map(function(){return k.qsa(this,e)});return t},closest:function(e,t){var r=this[0],i=false;if(typeof e=="object")i=n(e);while(r&&!(i?i.indexOf(r)>=0:k.matches(r,e)))r=r!==t&&!H(r)&&r.parentNode;return n(r)},parents:function(e){var t=[],r=this;while(r.length>0)r=n.map(r,function(e){if((e=e.parentNode)&&!H(e)&&t.indexOf(e)<0){t.push(e);return e}});return J(t,e)},parent:function(e){return J(A(this.pluck("parentNode")),e)},children:function(e){return J(this.map(function(){return V(this)}),e)},contents:function(){return this.map(function(){return s.call(this.childNodes)})},siblings:function(e){return J(this.map(function(e,t){return o.call(V(t.parentNode),function(e){return e!==t})}),e)},empty:function(){return this.each(function(){this.innerHTML=""})},pluck:function(e){return n.map(this,function(t){return t[e]})},show:function(){return this.each(function(){this.style.display=="none"&&(this.style.display="");if(getComputedStyle(this,"").getPropertyValue("display")=="none")this.style.display=X(this.nodeName)})},replaceWith:function(e){return this.before(e).remove()},wrap:function(e){var t=D(e);if(this[0]&&!t)var r=n(e).get(0),i=r.parentNode||this.length>1;return this.each(function(s){n(this).wrapAll(t?e.call(this,s):i?r.cloneNode(true):r)})},wrapAll:function(e){if(this[0]){n(this[0]).before(e=n(e));var t;while((t=e.children()).length)e=t.first();n(e).append(this)}return this},wrapInner:function(e){var t=D(e);return this.each(function(r){var i=n(this),s=i.contents(),o=t?e.call(this,r):e;s.length?s.wrapAll(o):i.append(o)})},unwrap:function(){this.parent().each(function(){n(this).replaceWith(n(this).children())});return this},clone:function(){return this.map(function(){return this.cloneNode(true)})},hide:function(){return this.css("display","none")},toggle:function(t){return this.each(function(){var r=n(this);(t===e?r.css("display")=="none":t)?r.show():r.hide()})},prev:function(e){return n(this.pluck("previousElementSibling")).filter(e||"*")},next:function(e){return n(this.pluck("nextElementSibling")).filter(e||"*")},html:function(e){return arguments.length===0?this.length>0?this[0].innerHTML:null:this.each(function(t){var r=this.innerHTML;n(this).empty().append(K(this,e,t,r))})},text:function(t){return arguments.length===0?this.length>0?this[0].textContent:null:this.each(function(){this.textContent=t===e?"":""+t})},attr:function(n,r){var i;return typeof n=="string"&&r===e?this.length==0||this[0].nodeType!==1?e:n=="value"&&this[0].nodeName=="INPUT"?this.val():!(i=this[0].getAttribute(n))&&n in this[0]?this[0][n]:i:this.each(function(e){if(this.nodeType!==1)return;if(B(n))for(t in n)Q(this,t,n[t]);else Q(this,n,K(this,r,e,this.getAttribute(n)))})},removeAttr:function(e){return this.each(function(){this.nodeType===1&&Q(this,e)})},prop:function(t,n){t=M[t]||t;return n===e?this[0]&&this[0][t]:this.each(function(e){this[t]=K(this,n,e,this[t])})},data:function(t,n){var r=this.attr("data-"+t.replace(v,"-$1").toLowerCase(),n);return r!==null?Y(r):e},val:function(e){return arguments.length===0?this[0]&&(this[0].multiple?n(this[0]).find("option").filter(function(){return this.selected}).pluck("value"):this[0].value):this.each(function(t){this.value=K(this,e,t,this.value)})},offset:function(e){if(e)return this.each(function(t){var r=n(this),i=K(this,e,t,r.offset()),s=r.offsetParent().offset(),o={top:i.top-s.top,left:i.left-s.left};if(r.css("position")=="static")o["position"]="relative";r.css(o)});if(this.length==0)return null;var t=this[0].getBoundingClientRect();return{left:t.left+window.pageXOffset,top:t.top+window.pageYOffset,width:Math.round(t.width),height:Math.round(t.height)}},css:function(e,r){if(arguments.length<2){var i=this[0],s=getComputedStyle(i,"");if(!i)return;if(typeof e=="string")return i.style[L(e)]||s.getPropertyValue(e);else if(F(e)){var o={};n.each(F(e)?e:[e],function(e,t){o[t]=i.style[L(t)]||s.getPropertyValue(t)});return o}}var u="";if(_(e)=="string"){if(!r&&r!==0)this.each(function(){this.style.removeProperty(U(e))});else u=U(e)+":"+W(e,r)}else{for(t in e)if(!e[t]&&e[t]!==0)this.each(function(){this.style.removeProperty(U(t))});else u+=U(t)+":"+W(t,e[t])+";"}return this.each(function(){this.style.cssText+=";"+u})},index:function(e){return e?this.indexOf(n(e)[0]):this.parent().children().indexOf(this[0])},hasClass:function(e){if(!e)return false;return i.some.call(this,function(e){return this.test(G(e))},z(e))},addClass:function(e){if(!e)return this;return this.each(function(t){r=[];var i=G(this),s=K(this,e,t,i);s.split(/\s+/g).forEach(function(e){if(!n(this).hasClass(e))r.push(e)},this);r.length&&G(this,i+(i?" ":"")+r.join(" "))})},removeClass:function(t){return this.each(function(n){if(t===e)return G(this,"");r=G(this);K(this,t,n,r).split(/\s+/g).forEach(function(e){r=r.replace(z(e)," ")});G(this,r.trim())})},toggleClass:function(t,r){if(!t)return this;return this.each(function(i){var s=n(this),o=K(this,t,i,G(this));o.split(/\s+/g).forEach(function(t){(r===e?!s.hasClass(t):r)?s.addClass(t):s.removeClass(t)})})},scrollTop:function(t){if(!this.length)return;var n="scrollTop"in this[0];if(t===e)return n?this[0].scrollTop:this[0].pageYOffset;return this.each(n?function(){this.scrollTop=t}:function(){this.scrollTo(this.scrollX,t)})},scrollLeft:function(t){if(!this.length)return;var n="scrollLeft"in this[0];if(t===e)return n?this[0].scrollLeft:this[0].pageXOffset;return this.each(n?function(){this.scrollLeft=t}:function(){this.scrollTo(t,this.scrollY)})},position:function(){if(!this.length)return;var e=this[0],t=this.offsetParent(),r=this.offset(),i=d.test(t[0].nodeName)?{top:0,left:0}:t.offset();r.top-=parseFloat(n(e).css("margin-top"))||0;r.left-=parseFloat(n(e).css("margin-left"))||0;i.top+=parseFloat(n(t[0]).css("border-top-width"))||0;i.left+=parseFloat(n(t[0]).css("border-left-width"))||0;return{top:r.top-i.top,left:r.left-i.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||u.body;while(e&&!d.test(e.nodeName)&&n(e).css("position")=="static")e=e.offsetParent;return e})}};n.fn.detach=n.fn.remove;["width","height"].forEach(function(t){var r=t.replace(/./,function(e){return e[0].toUpperCase()});n.fn[t]=function(i){var s,o=this[0];if(i===e)return P(o)?o["inner"+r]:H(o)?o.documentElement["scroll"+r]:(s=this.offset())&&s[t];else return this.each(function(e){o=n(this);o.css(t,K(this,i,e,o[t]()))})}});g.forEach(function(e,t){var r=t%2;n.fn[e]=function(){var e,i=n.map(arguments,function(t){e=_(t);return e=="object"||e=="array"||t==null?t:k.fragment(t)}),s,o=this.length>1;if(i.length<1)return this;return this.each(function(e,u){s=r?u:u.parentNode;u=t==0?u.nextSibling:t==1?u.firstChild:t==2?u:null;i.forEach(function(e){if(o)e=e.cloneNode(true);else if(!s)return n(e).remove();Z(s.insertBefore(e,u),function(e){if(e.nodeName!=null&&e.nodeName.toUpperCase()==="SCRIPT"&&(!e.type||e.type==="text/javascript")&&!e.src)window["eval"].call(window,e.innerHTML)})})})};n.fn[r?e+"To":"insert"+(t?"Before":"After")]=function(t){n(t)[e](this);return this}});k.Z.prototype=n.fn;k.uniq=A;k.deserializeValue=Y;n.zepto=k;return n}();window.Zepto=Zepto;window.$===undefined&&(window.$=Zepto)
- var userTable = {
- items: {},
- addUser: function (usr) { this.items[usr.name] = usr; },
- hasUser: function (name) { return this.items.hasOwnProperty(name); },
- getUser: function (name) { return this.items[name]; },
- getUsers: function () {
- var users = [];
- for (var i in this.items)
- {
- if(this.hasUser(i))
- {
- users.push(this.getUser(i));
- }
- }
- return users;
- }
- };
- var THREADS = "threads";
- var POSTS = "posts";
- var MENTION = "mention";
- var POLLS = "polls";
- var users=[];
- function initUsers()
- {
- for (var i = 0; i < userList.length; i++)
- {
- users.push(construct(user,userList[i]));
- }
- }
- function construct(constructor, args) {
- function F() {
- return constructor.apply(this, args);
- }
- F.prototype = constructor.prototype;
- return new F();
- }
- function user(name, ignorePolls, ignoreThreads, ignorePosts, ignoreMention)
- {
- var defaults = true;
- if (typeof (ignorePolls) === "undefined") ignorePolls = defaults; else defaults = false;
- if (typeof (ignorePolls) === "number") {
- defaults = false;
- switch (ignorePolls) {
- default:
- case 3:
- ignoreMention = true;
- case 2:
- ignorePosts = true;
- case 1:
- ignoreThreads = true;
- case 0:
- ignorePolls = true;
- break;
- }
- }
- if (typeof (ignoreThreads) === "undefined") ignoreThreads = defaults; else defaults = false;
- if (typeof (ignorePosts) === "undefined") ignorePosts = defaults; else defaults = false;
- if (typeof (ignoreMention) === "undefined") ignoreMention = defaults;
- this.name = name;
- this[POLLS] = ignorePolls;
- this[THREADS] = ignoreThreads;
- this[POSTS] = ignorePosts;
- this[MENTION] = ignoreMention;
- this.regex = RegExp(this.name, "g");
- userTable.addUser(this);
- }
- $("html").hide();
- $(document).ready(Init);
- function Init()
- {
- initUsers();
- if (document.URL.indexOf("forum/forums") != -1)
- {
- $(".threadbit").each(function ()
- {
- var current = $(this);
- var threadHidden = false;
- var name = $(this).find(".threadauthor.td").text();
- threadHidden = performHide(name, THREADS, current);
- if (!threadHidden) {
- var content = $(this).find(".postedby .username");
- var postedBy = content.text();
- performIgnoreMethod(postedBy, MENTION, function () {
- content.html(content.html().replace(postedBy, getRandomName()));
- });
- $(this).find(".threadsmilie img[title=Poll]").each(function () {
- performHide(name, POLLS, current);
- });
- }
- });
- $(".commalist .username").each(function () {
- var name = $(this).text();
- performHide(name, MENTION, $(this).parent());
- });
- }
- else if (document.URL.indexOf("forum/threads") != -1)
- {
- ignorePosts(".postbitlegacy, .postbitignored",
- ".username",
- ".bbcode_container .bbcode_postedby strong",
- ".postcontent.restore ");
- }
- else if (document.URL.indexOf("forum/newreply") != -1)
- {
- ignorePosts("#postlist > li",
- ".username",
- ".bbcode_container .bbcode_postedby strong",
- ".restore");
- }
- $("html").show();
- }
- function ignorePosts(postAdr, usernameAdr, postedByAdr, postContentAdr)
- {
- $(postAdr).each(function () {
- var current = $(this);
- var name = $(this).find(usernameAdr).text();
- var postHidden = false;
- postHidden = performHide(name, POSTS, current);
- if (!postHidden) {
- $(this).find(postedByAdr).each(function () {
- performHide($(this).text(), MENTION, $(this).parent().parent().parent());
- });
- var postContent = $(this).find(postContentAdr);
- var content = $(postContent).html();
- var contentChanged = false;
- for (var i = 0; i < users.length; i++) {
- if (users[i].mention) {
- if (content.indexOf(users[i].name) != -1) {
- content = content.replace(users[i].regex, getRandomName());
- contentChanged = true;
- }
- }
- }
- if (contentChanged)
- $(postContent).html(content);
- }
- });
- }
- function getRandom(max)
- {
- return Math.floor((Math.random() * max));
- }
- function getRandomName()
- {
- var nameParts1 = ["Wasser", "Doof", "Socken", "Kartoffel"];
- var nameParts2 = ["nase","kopf","nascher"];
- var rand1= getRandom(nameParts1.length);
- var rand2 = getRandom(nameParts2.length);
- return nameParts1[rand1]+nameParts2[rand2];
- }
- function performIgnoreMethod(name,type,callback)
- {
- name = name.trim();
- if (userTable.hasUser(name)) {
- var usr = userTable.getUser(name);
- if (usr[type]) {
- callback();
- return true;
- }
- }
- return false;
- }
- function performHide(name, type, obj)
- {
- return performIgnoreMethod(name, type, function () { $(obj).hide()});
- }
Advertisement
Add Comment
Please, Sign In to add comment